Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: CL | DM;

Вниз

Добавить 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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
8-1112417822
Galiaf
2005-04-02 08:57
2005.10.09
Звуки в Delphi


2-1125384067
Alavar
2005-08-30 10:41
2005.10.09
Как переменной присвоить значение конкретной ячейки БД?


2-1125463449
mr.IL
2005-08-31 08:44
2005.10.09
Не понимаю проблему с FireBird


6-1118755977
Vulko
2005-06-14 17:32
2005.10.09
Получить картинку (файл) с сервера...


3-1125302849
yurrius
2005-08-29 12:07
2005.10.09
Login к Firebird 1.0