Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.04;
Скачать: 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 вся ветка

Текущий архив: 2002.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.007 c
3-9365
amamed_3071
2002-03-09 09:40
2002.04.04
AdoQuery Time Out expected Error


1-9549
Kostyanych
2002-03-23 00:46
2002.04.04
А как реализовать drag&drop из, например, проводника в свою прогу?


1-9566
DenKop
2002-03-24 15:14
2002.04.04
Извлечение иконок


1-9580
Serj-klg
2002-03-23 21:57
2002.04.04
Траблы с принтерами и QReport


1-9439
Sound
2002-03-24 18:05
2002.04.04
НУ НЕ МОГУ ПОНЯТЬ!!!!