Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопрос по VirtualTreeView 
:(
    Опции темы
RA
Дата 1.5.2006, 23:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Брутальный буратина
****


Профиль
Группа: Участник Клуба
Сообщений: 3497
Регистрация: 31.3.2002
Где: Лес

Репутация: 14
Всего: 115



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

В хэлпе копаться лень  smile 

Чтоб разобраться с целесообразностью использования его в своём прожекте, меня интересует возможность у этого компонента менять параметры шрифта итемов, к примеру как у HTMLTreeView.

Я пока не нашёл никаких признаков того что VirtualTreeView это способен делать, может я ошибаюсь ?
 
PM   Вверх
December
Дата 2.5.2006, 01:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: 8
Всего: 57



Да, дока там убийственная, планирую заняться редизайном оной, а то придётся ехать искать чела, который применил такое цветовое решение.
Смотри статью Paint cycles and stages. Это в раздеде Inner Fundamentals chm-хелпа 


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
AriX
Дата 2.5.2006, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 16.6.2003

Репутация: 5
Всего: 19



RAdmin
Тебе нужно в событии OnPaintText у параметра TargetCanvas изменять TargetCanvas.Font.* и т.д., проверяя, например, тип нода (его можно записывать для каждого нода в record'е.
Например, так

Код
// типы
TNodeKind = (nkParent, nkChild);
PNodeInfo = ^TNodeInfo;
TNodeInfo = record
  Kind: TNodeKind;
  // еще какие-то параметры
end;

..

// при создании нода, создавать для него свой рекорд
var
  Node: PVirtualNode;
  Item: PNodeInfo;
..
Node := Tree.AddChild(nil);
Item := Tree.GetNodeData(Node);
Item.Kind := nkChild; // или nkParent

..

// потом в OnPaintText
var
  Item: PNodeInfo;
..
if (Column = 0) and (TextType = ttStatic) then begin
  Item := Tree.GetNodeData(Node);
  case Item.Kind of
    nkParent:
      TargetCanvas.Font.Color := clBlue;
    nkChild:
      TargetCanvas.Font.Style := TargetCanvas.Font.Style + [fsBold];
  end;
end;
 
PM MAIL   Вверх
RA
Дата 3.5.2006, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Брутальный буратина
****


Профиль
Группа: Участник Клуба
Сообщений: 3497
Регистрация: 31.3.2002
Где: Лес

Репутация: 14
Всего: 115



Ой, а событие OnPaintText я незаметил  smile .
теперь всё ясно, всем пасибо.  
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0642 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.