Привет Всем.
Помогите идиоту.
На диалог кинул CTreeCtrl
Добавляю одну строчку с иконкой ярлыка
Вместо иконки рустое место,
чет я намудрил никак не пойму
CImageList m_imageList;
m_imageList.Create(16,16,ILC_COLOR24,1,1);
SHFILEINFO shinfo;
SHGetFileInfo( _T("C:\\test.lnk"), NULL,
&shinfo,
sizeof(shinfo),
SHGFI_DISPLAYNAME |SHGFI_OVERLAYINDEX| SHGFI_ICON | SHGFI_SMALLICON);
int icon1=m_imageList.Add(shinfo.hIcon);
m_Tree.SetImageList(&m_imageList,TVSIL_NORMAL);
HTREEITEM hi_tree=m_Tree.InsertItem("Test",icon1,icon1);
Весь вечер сижу ну никак "не выходит каменный цветок"
Заранее сэнькс
Удалено избыточное цитирование. — SchweinDeBurg
Здравствуйте, Kreol, Вы писали:
K>K> SHGetFileInfo( _T("C:\\test.lnk"), NULL,
K> &shinfo,
K> sizeof(shinfo),
K> SHGFI_DISPLAYNAME |SHGFI_OVERLAYINDEX| SHGFI_ICON | SHGFI_SMALLICON);
//иконку точно возвращает?
K> int icon1=m_imageList.Add(shinfo.hIcon);
//icon1 точно >=0
K> m_Tree.SetImageList(&m_imageList,TVSIL_NORMAL);
попробуй так
TREEITEM item={0};
item.mask=TVIF_TEXT|TVIF_IMAGE|TVIF_SELECTEDIMAGE;маска текст+ иконка+иконка для выделенного узла
item.iImage=icon1;
item.iSelectedIamge=icon1;
hi_tree=m_Tree.InsertItem(&item);
K>
K>Весь вечер сижу ну никак "не выходит каменный цветок"
K>Заранее сэнькс
Оказалось все намного проще.
Поставил m_imageList как переменную член класса диалога
И все заработало.
Во блин, че сразу не сообразил...