2

我正在尝试删除基于标题的列表视图项目,但我找不到解决方案,我可以删除项目的唯一方法是使用索引:

listview1.Items.Delete (0);

谁能帮我通过标题删除一个项目?

4

2 回答 2

8

您可以使用类似这样的东西,它试图找到ListItem带有标题的 a Item 2,如果找到它就将其删除:

procedure TForm1.Button1Click(Sender: TObject);
var
  LI: TListItem;
begin
  LI := ListView1.FindCaption(0, 'Item 2', False, True, False);
  if Assigned(LI) then
  begin
    ListView1.Selected := LI;
    ListView1.DeleteSelected;
  end;
end;

另一种不需要您首先选择项目的方法是通过以下方式删除找到的项目Index

procedure TForm1.Button2Click(Sender: TObject);
var
  LI: TListItem;
begin
  LI := ListView1.FindCaption(0, 'Item 2', False, True, False);
  if Assigned(LI) then
    ListView1.Items.Delete(LI.Index);
end;
于 2013-10-17T13:29:53.800 回答
-1

过程 TForm1.Button1Click(Sender: TObject); var LI: TListItem; 开始 LI := ListView1.Selected; 如果已分配(LI),则开始 ListView1.Selected := LI; ListView1.DeleteSelected; 结尾; 结尾;

于 2021-04-19T06:11:45.680 回答