我有一个TListView,当用户单击某个项目的图像(下图中的大绿点)时,我想复制该项目的文本(“ russtest.cfg”)和子项目的文本(“ My Device,1991”) )显示在ShowMessage中。我找不到如何在C ++ Builder中执行此操作,但是this link显示了如何在Delphi中执行操作。
下面是我在TListView的ItemClickEx
方法中尝试过的代码:
TListItem* item;
item = ListView1->Items->Item[ItemIndex];
UnicodeString s;
s = item->ToString();
ShowMessage(s);
但是它带回来了:
编辑1::添加了我用于填充ListView的代码:
TListViewItem* item2Add = Form1->ListView1->Items->Add();
Form1->ListView1->BeginUpdate();
item2Add->Text = mystring3; // e.g. "russtest.cfg"
item2Add->Detail = mystring2; // e.g. "My Device, 1991"
item2Add->ImageIndex = 1; // big green dot
Form1->ListView1->EndUpdate();
答案 0 :(得分:2)
您需要将TListItem*
转换为TListViewItem*
,然后才能访问其Text
属性:
TListViewItem* item = static_cast<TListViewItem*>(ListView1->Items->Item[ItemIndex]);
String s = item->Text;
ShowMessage(s);