0

当我使用“SetIconSpacing”命令时,第一个图标没有放在它应该放在的位置 - 任何想法为什么?(当我不使用 SetIconSpacing 时,它们被均匀描绘)

代码:

VZ_Liste.SetIconSpacing(CSize (100,100)); 
verkehrs_icons.Create(64,64,ILC_COLOR32,29,0); 
CString strItem = _T("");
for (int i = 0; i<29; i++) 
{
  verkehrs_icons.Add(AfxGetApp()->LoadIcon(IDI_ICON1 + i)); 
  VZ_Liste.InsertItem(i, strItem, i);
}
VZ_Liste.SetImageList(&verkehrs_icons, LVSIL_NORMAL);

当前的错误行为:

看第一项

4

1 回答 1

1

在设置图像列表之前,您正在使用图像索引。正确的顺序是:

VZ_Liste.SetImageList(&verkehrs_icons, LVSIL_NORMAL); // FIRST!
for (int i = 0; i<29; i++) 
{
  verkehrs_icons.Add(AfxGetApp()->LoadIcon(IDI_ICON1 + i)); 
  VZ_Liste.InsertItem(i, strItem, i);
}
于 2016-03-13T21:59:14.107 回答