Delphi:利用TreeView 的data属性存储相关数据
时间: 2024-03-18 18:41:05 浏览: 142
TreeView 的 Data 属性可以用来存储与节点相关的数据。在 Delphi 中,Data 属性是一个指向 TObject 类型的指针,可以指向任何对象。因此,我们可以通过创建一个继承自 TObject 的类来存储相关数据,然后将这个类的实例赋值给节点的 Data 属性。
下面是一个示例代码:
```delphi
type
TMyData = class(TObject)
public
SomeData: string;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
Node: TTreeNode;
MyData: TMyData;
begin
Node := TreeView1.Items.Add(nil, 'Root Node');
MyData := TMyData.Create;
MyData.SomeData := 'Some Value';
Node.Data := MyData;
end;
procedure TForm1.TreeView1Click(Sender: TObject);
var
Node: TTreeNode;
MyData: TMyData;
begin
Node := TreeView1.Selected;
if Assigned(Node) and Assigned(Node.Data) then
begin
MyData := TMyData(Node.Data);
ShowMessage(MyData.SomeData);
end;
end;
```
在上面的示例中,我们创建了一个 TMyData 类来存储节点相关的数据,然后将这个类的实例赋值给根节点的 Data 属性。在 TreeView 的 Click 事件中,我们可以通过选中节点的 Data 属性来获取存储的数据。
阅读全文