————请问在treeview的一个节点treenode里怎么存储两个值:‘张三’、‘001’???

jianxin_js 2003-10-17 05:18:58
请问在treeview的一个节点treenode里怎么存储两个值:‘张三’、‘001’
其中‘张三’作为text显示出来,‘001’作为value不显示???
...全文
90 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jianxin_js 2003-10-17
  • 打赏
  • 举报
回复
自己做了一个测试,基本掌握了;)

PMyRec = ^TMyRec;
TMyRec = record
FName: string;
LName: string;
end;
...
(1)
rootnode:=tv.Items.AddFirst(nil,'root');

New(MyRecPtr);
MyRecPtr^.FName :='fname_text1';
MyRecPtr^.LName :='lname_text1';
tv.Items.AddChildObject(rootnode,'test',MyRecPtr);
(2)
rootnode:=tv.Items.AddFirst(nil,'root');
mynode:=tv.Items.AddObject(rootnode,'test',MyRecPtr);

New(MyRecPtr);
MyRecPtr^.FName :='fname_text1';
MyRecPtr^.LName :='lname_text1';
tv.Items[1].Data :=MyRecPtr;

... ...
var i:integer;
MyNode:TTreeNode;
MyRecPtr: PMyRec;
s1,s2:string;
begin
MyNode:=tv.Items[2];
MyRecPtr:=Mynode.Data ;
s1:=MyRecptr.FName ;
s2:=MyRecPtr.LName ;
showmessage('s1:'+s1+'-----s2:'+s2);
end
47522341 2003-10-17
  • 打赏
  • 举报
回复
搞定
sunnysmile2003 2003-10-17
  • 打赏
  • 举报
回复
用.data属性
如果存值很多可以声明一个记录
TTreeViewData = record
vText: string;
vValue: String;
……
end;
……
TreeData: TTreeViewData;
treenode.data := TreeData;
……
kuangning 2003-10-17
  • 打赏
  • 举报
回复
treenode.text := 'zhangsan';
treenode.data := Tobject(001);//这是一个指针。什么都可以存的

------
I := Integer(treenode.data := Toobject(001);
kuangning 2003-10-17
  • 打赏
  • 举报
回复
treenode.caption := 'zhangsan';
treenode.data := Toobject(001);

------
I := Integer(treenode.data := Toobject(001);

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧