我正在尝试为我的控件创建一个图像列表,并加载其他图像。问题是只使用我创建的图像,并且不显示加载的图像。这是我的ccode:
m_Bitmap1.LoadBitmap(IDB_BITMAP1);
m_Bitmap2.LoadBitmap(IDB_BITMAP2);
m_Bitmap3.LoadBitmap(IDB_BITMAP3);
m_ImageListTree = new CImageList;
m_ImageListTree->Create(IDB_BITMAP1, 16, 1, RGB(255, 255, 255));
m_ImageListTree->Add(&m_Bitmap2, RGB(255, 255, 255));
m_ImageListTree->Add(&m_Bitmap3, RGB(255, 255, 255));
while( ItemTree != NULL)
{
BasicTree->SetItemImage(ItemTree, nCounter, nCounter);
ItemTree = BasicTree->GetNextItem(ItemTree, TVGN_CHILD);
nCounter++;
}
唯一的IDB_BITMAP1显示在所有树级别中。有什么想法吗?
答案 0 :(得分:0)
实际上我从不在循环中,因为我在进入循环之前没有得到初始的HTRREITEM。
此外,在控件中创建列表,使用您用于创建的位图初始化每个新项目。您可以在插入或更改中设置图像eitehr,但需要指定不同的图像(插入时需要定义TVINSERTSTRUCTW并在插入整个项目之前设置图像。