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

Вниз

TTreeView с wordwrap текста в нодах   Найти похожие ветки 

 
Dinn   (2003-02-08 00:36) [0]

Уважаемые, можно такое сделать?


 
Style   (2003-02-08 00:57) [1]

Это не реально! т.е. Само дерево изначально рисуют винды. поэтому я думаю что зарисовку самих нодов ты не перехватишь.
Единственное что можно сделать это создавать ноды чуть ниже и
вних вставлять продолжение текста, а на AdvancedCustomDraw попробывать запретить рисование RootLine и картинок в данных нодах.
:)

Да и посмотри мой TGridTreeView может пригодиться
http://sands.nm.ru/TGTView.zip


 
Юрий Зотов ©   (2003-02-08 06:55) [2]

> поэтому я думаю что зарисовку самих нодов ты не перехватишь.

Жмем F1 - и видим готовые события, позволяющие перехватить прорисовку не только самого дерева, но и каждого его узла. А функция DrawText имеет флаг DT_WORDBREAK.


 
Style   (2003-02-08 08:56) [3]

Я там как бы в исходнике дерева зарисовки не нашел., конечно если перехватить виндовские... дык вот как??


 
Dinn   (2003-02-08 14:11) [4]

Если я правильно понял, то можно воткнуть что вроде такого в tvCustomDrawItem :

NodeRect:=Node.DisplayRect(True);
Windows.DrawText(Node.Handle, PChar(Node.Text), Length(Node.Text), NodeRect, DT_WordBreak);

Но как управлять ректом ноды?


 
Style   (2003-02-08 15:55) [5]

А вот функция походу получает размер от когогото сообщения, а вот как туды влезть? Тут и Билл Гейтс запутается :))

TVM_GETITEMRECT - это сообщение и использует Node.DisplayRect,
а сообщения для установки Rectа нету!
т.е. виды этого делать не дают!


 
Dinn   (2003-02-08 22:03) [6]

Итого - стандартное дерево, скорее всего, так не развернешь?
Надо писать свое с нуля?


 
Style   (2003-02-08 23:13) [7]

TWordWarpTreeView :))


 
Style   (2003-02-08 23:13) [8]

TWordWrapTreeView :))


 
Dinn   (2003-02-09 00:44) [9]

>Style
Это что за зверь (и где его взять)?


 
Style   (2003-02-09 00:52) [10]

> DINN
Самому писать :)

Хочешь попробовать??


 
Юрий Зотов ©   (2003-02-09 10:06) [11]

TVM_SETITEMHEIGHT


 
Dinn   (2003-02-09 14:03) [12]

>Юрий Зотов
Спасибо, но установить высоту ноды мало, еще надо и длину. А такого сообщения я что-то не нашел.


 
ALex44   (2003-02-10 01:00) [13]


> Style (09.02.03 00:52)
> > DINN
> Самому писать :)
>
> Хочешь попробовать??

Ya, k stati, napisal, i teper" tol"ko im i pol"zuyus". Bystree, gibche, men"she glyukov (tochnee, proshe ispravlyat" :) No o multiline ya ne dumal (ne nuzhno bylo), no eto, conechno, ne problema.


 
Vagrant ©   (2003-02-10 02:36) [14]

Возьми VirtualTreeView и навсегда забудь
про стандартный TreeView ;=)



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

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

Наверх




Память: 0.49 MB
Время: 0.013 c
1-52840
AlexanderSK
2003-02-07 14:00
2003.02.17
Удаление формы!


1-53105
RTZ
2003-02-07 10:32
2003.02.17
Определить имя компьютера.


1-52831
Jaxtor
2003-02-07 12:49
2003.02.17
Удаление всех файлов из заданной папки


14-53266
Ihor Osov'yak
2003-02-02 01:11
2003.02.17
Это несколько кощунствено, но все же... Идиоты есть везде ...


1-52942
pavel_k
2003-02-08 16:52
2003.02.17
Два класса