Re: CTreeControl не отображает рисунки
От: Аноним  
Дата: 26.06.05 12:44
Оценка:
Здравствуйте, Minimaxus, Вы писали:

M>1) есть следующий код:

M>

M>    CImageList il;
M>    il.Create(IDB_BITMAP1, 24, 2, RGB(255,0,255));

M>    m_tree.SetImageList(&il, TVSIL_NORMAL);
M>    m_tree.InsertItem("maza",1,1);

M>

M>Я его в инициализации диалога вставил.
M>Здесь IDB_BITMAP1 — это ресурс Bitmap, который имеет размер 48*16. Т.е. первая строка вроде как 2 рисунка должна выделить.
M>m_tree — указатель на CTreeControl
M>Запускаю приложение и вижу мой диалог бокс с TreeControl. В TreeControl видно отступы в 24 пикселя (ну типа на глаз так), но все мои рисунки — это просто белый фон контрола.
M>Чиатю вроде бы все с МСДН.МИКРОСОФТА и не могу понять почему не работает как надо.

M>2) Еще я просто пробовал загрузить IDB_BITMAP1 как CBitmap и добавить его в CImageList. Ошибок нет, но когда я получаю свойства Битмапа следующим способом:

M>
M>        BITMAP infoBMP;
M>    bm.GetBitmap(&infoBMP);
M>

M>то в поле LPVOID bmBits; вижу указатеь на NULL. Т.е. как-будто картинки и нету.
M>Что тут не так?

насколько я помню в функции CImageList.Create нужно указывать размеры создаваемых битмапов, в Вашем случае будет 48 на 16. Во вторых попробуйте айтем вставлять через TVITEMMINSERT структуру, указав в поле TVITEM ключ IMAGEINDEX (пишу на память, для точности глянтье МСДВ).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.