Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TreeView-Zeichnenproblem (Farbe wird nicht gesetzt) (https://www.delphipraxis.net/98216-treeview-zeichnenproblem-farbe-wird-nicht-gesetzt.html)

Reinhardtinho 23. Aug 2007 09:28


TreeView-Zeichnenproblem (Farbe wird nicht gesetzt)
 
Hallo allerseits,

ich habe in meiner Anwendung ein JvTreeView mit Checkboxen und möchte, dass die Hintergrundfarbe des Nodes geändert wird, wenn ich eine Checkbox anhake.

Das habe ich bereits:
Delphi-Quellcode:
procedure TForm_Main.JvTreeView1Click(Sender: TObject);
var
  Node : TTreeNode;
begin
  if (JvTreeView1.ItemIndex <> -1) then
  begin
    Node := JvTreeView1.Selected;

    if JvTreeView1.Checked[Node] then
      JvTreeView1.Repaint;
  end; (* of if *)
end;

procedure TForm_Main.JvTreeView1CustomDrawItem(Sender: TCustomTreeView;
  Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
  if (cdsChecked in State) then
  begin
    Sender.Canvas.Brush.Color := clYellow;
    DefaultDraw              := True;
  end; (* of if *)
end;
An der Farbe ändert sich aber nichts, wenn ich die Checkbox anhake.
Hat jemand einen Tipp, was ich ändern muss?


Vielen Dank und MFG
Lorenz

[Edit]Schlechtreibung[/Edit]

Bolt Thrower 23. Aug 2007 13:29

Re: TreeView-Zeichnenproblem (Farbe wird nicht gesetzt)
 
Hallo Lorenz,

wenn Du den Status des Knotens auf die folgende Weise prüfst, funktioniert das mit der Hintergrundfarbe (hab's gerade mal getestet):

Delphi-Quellcode:
procedure TForm1.JvTreeView1CustomDrawItem(Sender: TCustomTreeView;
  Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
  if JvTreeView1.Checked[Node] then
  begin
    Sender.Canvas.Brush.Color := clYellow;
    DefaultDraw              := True;
  end; (* of if *)
end;
Ich hoffe, ich konnte Dir weiterhelfen.

Grüße,

Bolt Thrower

Reinhardtinho 23. Aug 2007 13:37

Re: TreeView-Zeichnenproblem (Farbe wird nicht gesetzt)
 
Allerbesten Dank sage ich da ...

Klappt perfekt, genauso, wie ich das haben wollte.


MFG
Lorenz


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz