如何为“TListView”中的每个现有项添加其他数据?

时间:2009-11-07 07:47:17

标签: delphi tlistview

我正在使用TListView,我已经成功填充了每个项目的标题和第一个子项目。见下面的例子。

user   pass   working status  valid 
data1  pass   ---               ---
data2  pass2 ----              -----
-
-
-

填充每个项目后,我会为每个项目获取其他数据。我想添加此数据以填充每个项目的“工作”,“状态”和“有效”列。如何为每个项目添加此附加数据?

每次尝试时,数据都会显示在新项目中并显示在原始项目下方。见下面的例子。

user   pass   working status  valid 
data1  pass   ---               ---
data2  pass2 ----              -----
       yes   2009
       no 

如何为TListView中的每个现有项目添加其他数据?

2 个答案:

答案 0 :(得分:3)

您如何更新现有项目?

应该是这样的:

ListView1.Items[0].SubItems[1] := 'Yes';
ListView1.Items[0].SubItems[2] := '2009';
ListView1.Items[1].SubItems[1] := 'No';

答案 1 :(得分:0)

我也不确定我是否理解这个问题。

如果希望列可见,则需要在对象检查器中添加列。 (我猜你已经这样做过了。)

当您添加listview项时,您的代码将类似于

MyItem:=ListView1.Items.Add;
MyItem.Caption:='data1';
for i:=0 to 2 do // this is number of desired subcolumns -1
  MyItem.SubItems.Add(''); // puts blank string in each cell

// then put your data in;
MyItem.SubItems[0]:='pass';
MyItem.SubItems[1]:='---';
MyItem.SubItems[2]:='--'
//etc