Вниз
Скачать: CL | DM;

Перерисовка TTreeNode   Найти похожие ветки 

 
Алексей   (2004-11-17 16:38) [0]

Подскажите, плиз, как перерисовать одну ноду в дереве TTreeView.

Задача такая - в зависимости от условия меняю цвет шрифта. Далее ноду нужно перерисовать, только ее, а не все дерево.

Пока получается перерисовать все дерево.

Спасибо.


 
cae ©   (2004-11-17 17:14) [1]

Используй InvalidateRect


 
Ken   (2004-11-17 17:16) [2]

OnCustomDrawItem


 
Алексей   (2004-11-17 17:23) [3]

А примерчик какой-нибудь нельзя?

Заранее благодарен.


 
Ken   (2004-11-17 17:59) [4]

procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.TreeView1.Items.Add(nil, "node1");
Form1.TreeView1.Items.Add(nil, "node2");
Form1.TreeView1.Items.Add(nil, "node3");
end;

procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
 Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if Node.Text = "node2" then TreeView1.Canvas.Font.Color := clRed;
end;

end.


 
Алексей   (2004-11-18 11:18) [5]

Пример понятен, я так и делаю.

Мне нужно заставить перерисовать ноду в определенный момент.
Если сказать TreeView1.Update, то перерисовывается все дерево.
А TreeNode.Update не существует.

Как только ноду перерисовать?

Спасибо.


 
NAlexey ©   (2004-11-18 12:10) [6]

Тебе же >cae ©   (17.11.04 17:14) [1] ответил.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
3-1099685535
Hmm
2004-11-05 23:12
2004.12.05
связь таблиц. "combobox в dbgride"


14-1100510601
Гайцы-Газазад
2004-11-15 12:23
2004.12.05
Обращение к любителям политических диспутов


1-1100766166
Ozone
2004-11-18 11:22
2004.12.05
Не совсем обычный диАлог


4-1098290737
Specialist
2004-10-20 20:45
2004.12.05
Как скрыть процесс в WinXP в Delphi?


14-1100502667
AlexG
2004-11-15 10:11
2004.12.05
Кто использует Windows Messenger?




   Наверх