我想更新TListView中的值。我试过了
...
lvProcess : TListView;
liEdit : TlistItem;
...
liEdit:=lvProcess.Items.Item[1];
liEdit.Caption:='11';
liEdit.SubItems.ValueFromIndex[0]:='22';
liEdit.SubItems.ValueFromIndex[1]:='33';
...这应该是我想要的结果,但在此之后,子项的值是'=22‘和'=33’,我不希望添加相等的字符。
有谁可以帮我?我不知道这是否是编辑/更新列表项的正确方式
谢谢
发布于 2009-12-04 22:39:47
您可以尝试执行以下操作:
with LvProcess.Items[1] do
begin
Caption := '11';
SubItems.Strings[0] := '22';
SubItems.Strings[1] := '33';
end;如果你一次更新多个项目,最好用下面这样的方式来包围更新:
try
lvProcess.Items.BeginUpdate;
//Do your updates
finally
lvProcess.Items.EndUpdate;
end;发布于 2009-12-04 22:42:42
SubItems是一个TStrings,所以如果你想更新字符串值,可以这样做:
SubItems[0] := '22'
SubItems[1] := '33'您现在使用的方法是使用TStrings作为键/值列表。当您需要时,这是TStrings的一个很好的特性,但可能不是您想要的。
https://stackoverflow.com/questions/1847323
复制相似问题