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

Вниз

TTreeView   Найти похожие ветки 

 
Мурзилка   (2006-05-15 10:58) [0]

1) как определить, что данный узел является листом?
2) как определить чтоу  данного узла нет братьев?
3) можно ли менять цвет шрифта только в некоторых узлах?
4) как поменять размер шрифта во всем дереве?


 
Жуков Олег   (2006-05-15 11:19) [1]


> Мурзилка   (15.05.06 10:58)

Интересная терминология. :)


> 1) как определить, что данный узел является листом?

TTreeNode.HasChildren?

> 2) как определить чтоу  данного узла нет братьев?

TTreeNode.Parent.HasChildren
или
(TTreeNode.getPrevSibling = nil) and (TTreeNode.getNextSibling = nil)


> 3) можно ли менять цвет шрифта только в некоторых узлах?

Можно отрисовывать их программно в соответственных событиях, и выводить текст (и не только текст) стандартными средствами работы с графикой (см. TTreeView.OnCustomDrawItem, TTreeView.OnAdvancedCustomDrawItem, TTreeView.Canvas)


> 4) как поменять размер шрифта во всем дереве?

TreeView.Font.Size := 28;


 
Мурзилка   (2006-05-15 11:26) [2]


>
> > 4) как поменять размер шрифта во всем дереве?
>
> TreeView.Font.Size := 28;


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


 
Жуков Олег   (2006-05-15 11:36) [3]


> > 2) как определить чтоу  данного узла нет братьев?
>
> TTreeNode.Parent.HasChildren
>

Здесь я чушь сморозил, вместо HasChildren должно стоять Count = 1.


> вот тут странно, вроде чувствуется что размер поменялся,
>  а вот область отображения текста осталась таже, поэтому
> видны тольки части букв
>

Мне это тоже странно. У тебя какой то неправильный TreeView, поскольку у меня этот код меняет и шрифт, и высоту пункта. Проверено в D7 и D2005, на Windows XP и Цштвщцы 2000.


 
Жуков Олег   (2006-05-15 11:41) [4]

Установить высоту пункта:
uses CommCtrl;
 TreeView1.Perform(TVM_SETITEMHEIGHT, NewHeight, 0);
, но должно и без этого работать


 
Мурзилка   (2006-05-15 16:00) [5]


> Установить высоту пункта:
> uses CommCtrl;
>  TreeView1.Perform(TVM_SETITEMHEIGHT, NewHeight, 0);
> , но должно и без этого работать


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


 
Ega23 ©   (2006-05-15 16:03) [6]


> 3) можно ли менять цвет шрифта только в некоторых узлах?
>
> 4) как поменять размер шрифта во всем дереве?


TTreeView.OnCustomDraw.


 
Мурзилка   (2006-05-15 16:15) [7]

2 Жуков Олег

всё, ок с высотой текста разобрался.



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

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

Наверх





Память: 0.46 MB
Время: 1.192 c
15-1147264270
Seldon
2006-05-10 16:31
2006.06.04
Delphi2006 & Advanced records


6-1138958760
Pesh
2006-02-03 12:26
2006.06.04
Обзор компьютеров


1-1145987180
vidiv
2006-04-25 21:46
2006.06.04
Русские буквы и RichEdit 2.0


2-1148119883
Glex
2006-05-20 14:11
2006.06.04
Как получить имена всех подпапок, находящихся в данной папке?


2-1147853264
VitV
2006-05-17 12:07
2006.06.04
DBLookupComboBox1-пробема отображения данных.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский