如何从ClistCtrl中删除图像:
我正在尝试如下:
LVITEM item;
item.mask = LVIF_TEXT;
item.iItem = rowIndex;
item.iSubItem = 0;
item.pszText = L"";
item.state = 0;
item.stateMask = 0;
item.iImage = -1;
item.lParam = 0;
listCtrl.InsertItem(&item);
我的CListCtrl有正确显示的图像列表。我该如何删除它?
试过这个:
if (dataValue.at(0) == INVALID)
{
listCtrl.InsertItem(rowIndex, L"", 0);
}
else
{
LVITEM item = { 0 };
item.mask = LVIF_TEXT | LVIF_IMAGE;
item.iItem = rowIndex;
item.pszText = L"Test";
item.iImage = -1;
listCtrl.SetItem(&item);
}
答案 0 :(得分:2)
如果要删除图像,请在掩码中添加LVIF_IMAGE
:
LVITEM item = { 0 };
item.mask = LVIF_IMAGE;
item.iItem = rowIndex;
item.iImage = -1;
listCtrl.SetItem(&item);
如果您没有使用正确的面具,则会忽略相应的成员。
LVIF_IMAGE
iImage
成员有效或必须设置。
LVIF_TEXT
pszText
成员有效或必须设置
答案 1 :(得分:1)
我需要的是在无效案例上显示验证图标并在有效案例中隐藏图标:
if (dataValue.at(0) == INVALID)
{
listCtrl.InsertItem(rowIndex, L"");
}
else
{
listCtrl.InsertItem(rowIndex, L"", -1);
}
只关注我隐藏图像的方法是将-1设置为无效图像作为第3个参数。
这很奇怪!!