Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];

Вниз

Добавить Image к TTreeNode без TImageList   Найти похожие ветки 

 
Ega23 ©   (2005-09-16 16:18) [0]

Есть TTreeView (точнее потомок, но это не суть). Требуется в некоторых узлах по условию прорисовывать картинку. Знаю, как это задать через TImageList, но по условию задачи этот метод неприемлем.

Идея следующая: переопределить OnCustomDrawItem, там по условию через TTreeViewIdent и TTreeNode.DisplayRect можно "сдвинуть" нужный узел и в свободное место "впихнуть" нужную картинку.

Хотелось бы узнать: идея правильная, или есть другой способ?


 
Digitman ©   (2005-09-16 16:23) [1]

добавление в ран-тайм элемента в TImageList и последующая ссылка на него чем не устраивает ?


 
Ega23 ©   (2005-09-16 16:27) [2]

добавление в ран-тайм элемента в TImageList и последующая ссылка на него чем не устраивает ?


А если у элемента нет картинки? Если узлу ImageIndex=-1 поставить, то выглядит некрасиво. Всё равно место под картинку автоматом отводится...


 
Digitman ©   (2005-09-16 16:35) [3]


> Ega23 ©   (16.09.05 16:27) [2]



> по условию задачи этот метод неприемлем


сначала озвучь эти самые условия ... а то рассуждать можнго сколь угодно долго ...


 
Ega23 ©   (2005-09-16 16:50) [4]

сначала озвучь эти самые условия ... а то рассуждать можнго сколь угодно долго ...

Если кратко, то начальник сказал: "Некрасиво".

Если подробно, то это DB-компонент, отображающий "деревянную" структуру. При этом у некоторых объектов есть своё изображение, а у некоторых нет. При этом это дерево и есть "редактор" данной структуры. Т.е. в конечный момент времени, когда вся структура будет заполнена, картинки будут у всех узлов. Но на момент редактирования - может оказаться, что картинки нет.
Если присобачить ImageList, то TCustomTreeView на элементы, ImageIndex которых равен -1, всё равно отводит количество пикселей, равное ImageList.Width + Node.DisplayRect.Right - Node.DisplayRect.Left.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.011 c
1-1127132157
kolos_rus
2005-09-19 16:15
2005.10.09
Есть ли разница где подключить модуль?


1-1127125840
QwertyKz
2005-09-19 14:30
2005.10.09
шрифт заголовка окна


1-1127207851
Курдль
2005-09-20 13:17
2005.10.09
Как наиболее изящно отловить WM_MOUSEWHEEL?


14-1126874498
NewWonder
2005-09-16 16:41
2005.10.09
Продление жизни старому ПК


2-1125379587
_M_I_X_
2005-08-30 09:26
2005.10.09
Посмотрите од в чем ошибка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский