我们有一个名为TNewCheckListBox
的类,它具有以下属性:
property ItemObject[Index: Integer]: TObject; read write;
它的用途是什么?如何正确使用它?
此外,此类有3种方法:
function AddCheckBox(const ACaption, ASubItem: String; ALevel: Byte; AChecked, AEnabled, AHasInternalChildren, ACheckWhenParentChecked: Boolean; AObject: TObject): Integer;
function AddGroup(ACaption, ASubItem: String; ALevel: Byte; AObject: TObject): Integer;
function AddRadioButton(const ACaption, ASubItem: String; ALevel: Byte; AChecked, AEnabled: Boolean; AObject: TObject): Integer;
AObject: TObject
参数的作用是什么?如果可能的话,我想举个例子。
将项目添加到列表时,AObject
参数在内部分配给Obj:
ItemState.Obj := AObject;
其中ItemState
表示TNewCheckListBox
:中的单个项目(行(
TItemState = class (TObject)
public
Enabled: Boolean;
HasInternalChildren: Boolean;
CheckWhenParentChecked: Boolean;
IsLastChild: Boolean;
ItemType: TItemType;
Level: Byte;
Obj: TObject;
State: TCheckBoxState;
SubItem: string;
ThreadCache: set of Byte;
MeasuredHeight: Integer;
{ Force update item flag }
FUpdate: Integer;
end;
而
property ItemObject[Index: Integer]: TObject; read write;
用于在运行时读取/写入此对象。
我假设这个Obj
用于存储开发人员想要的任何对象(当您需要存储与项目相关的特定数据时很有用(,类似于Control
上的C#Tag
属性。
基本上,这取决于你使用这个属性的目的。