如何在运行时为列表视图中的子项设置图像?

How to set an image for a subitem in a listview in a runtime?

这个问题类似于现有的 .NET 和 C# 问题,但我认为在 Borland C++ 中应该是另一种方法。

在编辑时,我可以轻松地为列表视图中的子项目以及项目(在 Object Inspector 的特殊项目编辑器中)设置图像。但是在运行时我不能这样做,因为我没有子项目的参考。

ListView2->ViewStyle = vsReport;
ListView2->SmallImages = ImageList1;
TListColumn* column;
column = ListView2->Columns->Add();
column->Caption = "col1";
column = ListView2->Columns->Add();
column->Caption = "col2";

TListItem* item = ListView2->Items->Add();
item->Caption = "Item";
item->ImageIndex = 2;
item->SubItems->Add("Subitem");

有什么方法可以引用新的子项目吗?

我发现这个决定很简单。子项目有 属性 到 get/set 个图像编号:

item->SubItemImages[0] = 3;

顺便说一句,为每个列表视图项目设置 2 个或更多象形图是一种非常好的方法。