如何将项添加到TListBox并将其与数据对象相关联?

3 delphi listview listbox listboxitems

看代码:

function ShowItem(MyData: TMyData): TListItem;
var
  vListItem: TListItem;
begin
  vListItem := ListView1.Items.Add;
  vListItem.Data := MyData;

  vListItem.ImageIndex := 1;
  vListItem.Caption := MyData.Caption;

  Result := vListItem;
end;
Run Code Online (Sandbox Code Playgroud)

我需要做些什么来使TListBox工作?ListView.Items属性似乎是TListItem的属性,而ListBox.Items不是,这意味着该函数将无法为TListBox返回正确的参数.

我怎么能为TListBox转换这个?

谢谢

Jen*_*off 9

这应该做:

function ShowItem(MyData: TMyData): Integer;
begin
  Result := ListBox1.Items.AddObject(MyData.Caption, MyData);
end;
Run Code Online (Sandbox Code Playgroud)