访问 ListView 项目文本 (FMX)
Access ListView item text (FMX)
我有一个 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();
您需要将 TListItem*
类型转换为 TListViewItem*
,然后您可以访问其 Text
属性:
TListViewItem* item = static_cast<TListViewItem*>(ListView1->Items->Item[ItemIndex]);
String s = item->Text;
ShowMessage(s);
我有一个 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();
您需要将 TListItem*
类型转换为 TListViewItem*
,然后您可以访问其 Text
属性:
TListViewItem* item = static_cast<TListViewItem*>(ListView1->Items->Item[ItemIndex]);
String s = item->Text;
ShowMessage(s);