博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何让 TreeView 的列表项携带数据、并读出或删除这个数据 - 回复 "Splendour" 的问题...
阅读量:6928 次
发布时间:2019-06-27

本文共 1590 字,大约阅读时间需要 5 分钟。

  hot3.png

问题来源:

准备工作:
1、在空白窗体上添加 TreeView1 和 Button1
2、激活窗体的 OnCreate 事件, 激活 TreeView 的 OnDblClick 事件
全部代码如下:

unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, ComCtrls, StdCtrls;type  TForm1 = class(TForm)    TreeView1: TTreeView;    Button1: TButton;    procedure FormCreate(Sender: TObject);    procedure TreeView1DblClick(Sender: TObject);  end;var  Form1: TForm1;implementation{$R *.dfm}var  arr1,arr2,arr3: array of TPoint;procedure TForm1.FormCreate(Sender: TObject);var  i: Integer;begin  {准备测试用的动态数组数据}  SetLength(arr1, 2);  SetLength(arr2, 3);  SetLength(arr3, 4);  for i := 0 to Length(arr1)-1 do begin arr1[i].X := i+1; arr1[i].Y := i+4; end;  for i := 0 to Length(arr2)-1 do begin arr2[i].X := i+2; arr2[i].Y := i+5; end;  for i := 0 to Length(arr3)-1 do begin arr3[i].X := i+3; arr3[i].Y := i+6; end;  {添加到 TreeView}  TreeView1.Items.Clear;  TreeView1.Items.AddChildObject(nil, 'Note1', arr1);  TreeView1.Items.AddChildObject(nil, 'Note2', arr2);  TreeView1.Items.AddChildObject(nil, 'Note3', arr3);  Button1.Caption := '重新装载数据';  Button1.OnClick := OnCreate;end;procedure TForm1.TreeView1DblClick(Sender: TObject);var  node: TTreeNode;  arr: array of TPoint;begin  {获取当前节点}  node := TreeView1.Selected;  if not Assigned(node.Data) then  begin    ShowMessageFmt('%s 中没有携带其他数据', [node.Text]);    Exit;  end;  {获取数组}  arr := node.Data;  {读取数组的第一个数据}  ShowMessageFmt('%d, %d', [arr[0].X, arr[0].Y]);  {清除数据指针}  node.Data := nil;  ShowMessageFmt('%s 中的数据已被删除!', [node.Text]);end;end.

转载于:https://my.oschina.net/hermer/blog/319494

你可能感兴趣的文章
易科软件中国:维系客户关系是企业的根本
查看>>
ServerSuperIO Designer IDE 发布,打造物联网通讯大脑,随心而联。附:C#驱动源代码。...
查看>>
58、IPv6访问控制列表及ICMPv6简介
查看>>
小心使用replicate_do_db和replicate_ignore_db
查看>>
这本神奇的AR涂色书,让想象插上现实的翅膀
查看>>
ASP,PHP与.NET伪造HTTP-REFERER方法及防止伪造REFERER方法探讨
查看>>
Webpack入门教程二十一
查看>>
最简单的proftpd教程(Debian)
查看>>
Quick BI助力云上大数据分析---深圳云栖大会
查看>>
吴恩达谈人工智能:它将影响每一个行业
查看>>
Linux设备模型 (3)
查看>>
rac 11g_第二个节点重启后无法启动实例:磁盘组dismount问题
查看>>
读javascript高级程序设计12-HTML5脚本编程
查看>>
激烈竞争中,看新华三创新破局
查看>>
linux 如何查看3306端口号是否打开
查看>>
氚云tERP
查看>>
Windows 下使用ftp批处理脚本
查看>>
Exchange邮箱弱密码所造成的影响
查看>>
git 使用SSH
查看>>
win平台不能访问共享:权限不足的解决方法
查看>>