Вниз
Скачать: CL | DM;

Как в TreeView установить Хинты вручную на каждую ветвь?   Найти похожие ветки 

← →
zam ©   (2002-03-24 19:52) [0]

Цель - сделать все ветви дерева одинаковой длины, причем если текст ветви превышает эту длину, то поставить в конце многоточие , но при выборе ветви, в хинте показывать всю строку (не урезанную), причем хинты должны вываливаться даже если дерево полностью помещаеся на форме(по умолчанию хинты показываются только если часть строки в форме не помещается)
Помогите пожалуйста, кто знает.


← →
lipskiy ©   (2002-03-24 20:33) [1]

Можно поробовать перекрыть метод отрисовки итемов и выводить их текст вручную с многоточием, хинт при этом не затронется и должен отображать полный заголовок итема.


← →
zam ©   (2002-03-24 22:15) [2]

Это в каком обработчике и какое свойство надо изменить, чтобы не изменился сам Caption итемов?


← →
lipskiy ©   (2002-03-24 23:50) [3]

На OnAdvancedCustomDrawItem вешаешь обработчик, в нем берешь область отрисовки итема Node.DisplayRect, запрещаешь DefaultDraw и рисуешь текст сам TreeView1.Canvas.TextRect. Текст рисуешь любой, Caption итемов не меняется.
Но это геморройно, так надо будет корректно отработать все варианты отрисовок - выделенная/невыделенная нода, фокус/не фокус, м.б. еще что-то. Непросто, но совершенно реально, если очень надо.


← →
lipskiy ©   (2002-03-24 23:54) [4]

Вот, кстати еще одна шальная мысль пришла.
Можно не перекрывать стандартную отрисовку, а просто на канве дерева после стандартной отрисовки "накрыть" концы заголовков итемов прямоугольником с текстом из точек, правда в этом случае край прямоугольника будет обрезать буквы заголовка итема в любом месте - будут половинчатые буквы перед точками :)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.007 c
1-9438
Sound
2002-03-22 21:58
2002.04.04
Есть ли в ListBox событие похожее на onChange?


3-9390
Beer
2002-03-12 14:41
2002.04.04
Дерево из записей


3-9420
DeNNiss
2002-03-13 14:12
2002.04.04
Подскажите, плиз...


1-9529
POOKER
2002-03-23 17:16
2002.04.04
Нужна помощь


3-9367
Slawik
2002-03-11 13:25
2002.04.04
---|Ветка была без названия|---




   Наверх