我正在尝试在CTreeList控件中的文本之前添加Image,但是它没有显示出来,但是我观察到的是节点名称是在一些空间之后启动的,就像它为位图保留了空间,但是图像没有显示出来。 。这是代码捕捉:-
CImageList m_ImageList;
CBitmap m_Bitmap1;
m_ImageList.Create(16,16,ILC_COLOR32,1,1);
m_Bitmap1.LoadBitmap(IDB_BITMAP1);
m_ImageList.Add(&m_Bitmap1, RGB(0,0,0));
TreeSoft->Create(WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP |
TVS_HASLINES | TVS_HASBUTTONS | TVS_LINESATROOT |
TVS_SINGLEEXPAND | TVS_SHOWSELALWAYS |
TVS_TRACKSELECT,
CRect(10, 10, 200, 240), this, 0x1221);
TreeSoft->SetImageList(&m_ImageList, TVSIL_NORMAL);
hTree = TreeSoft->InsertItem( L"Software Production",0,0, TVI_ROOT);
hCompany = TreeSoft->InsertItem(L"Microsoft",0,0, hTree);
请告诉我我在这里想念的东西...
最佳答案
仅用于测试目的。
创建一个带有16位调色板的图标。
代替ILC_COLOR32使用ILC_COLOR。
而不是RGB(0,0,0)使用(COLORREF)0xFFFFFF
除了较小的调色板外,我有完全相同的代码,并且可以工作。
如果可行,您可以尝试使用更大的调色板。