Главная страница
    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
Время: 0.053 c
1-1146030439
ANB
2006-04-26 09:47
2006.06.04
Как в Ворде узнать, какая ячейка выше текущей ?


2-1148070813
Mr tray
2006-05-20 00:33
2006.06.04
VkKeyScan работает только для латинских символов


4-1142103030
Handle
2006-03-11 21:50
2006.06.04
Процессы,окна


3-1144923173
KyRo
2006-04-13 14:12
2006.06.04
Диалог ConnectionString


2-1147947986
KyRo
2006-05-18 14:26
2006.06.04
Как Можно удалить файл ?





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