![]() |
VirtualStringTree Nodes Farben nachträglich ändern
Hallo Leute
Ich habe folgendes Problem: Ich möchte einen Node auswählen und dieser soll sich automatisch Einfärben (Farbe ist egal) Wenn ich ihn wieder los lasse und einen anderen auswähle soll der zuletzt ausgewählte seine Farbe behalten. Ich bin schon über das PaintText Ereigniss gestoßen. Doch das erschien mir nicht ganz das richtige...
Delphi-Quellcode:
Das ist meine erste Übung dazu, jeden 2ten Node ein zu färben...
procedure TFrameDB.VSTDBPaintText(Sender: TBaseVirtualTree;
const TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType); begin if Node.Index mod 2 = 0 then begin TargetCanvas.Font.Color := clRed; TargetCanvas.Font.Style := [fsBold]; end else begin TargetCanvas.Font.Color := clBlack; TargetCanvas.Font.Style := []; end; end; Funktioniert jedoch nur beim erstmaligen Laden des VST. Wie ändere ich die Farbe nachtröglich? |
Re: VirtualStringTree Nodes Farben nachträglich ändern
Dann wirst du beim Anklicken in dem Node (z.B. irgendwo in .Data) speichern müssen, welche Farbe er jetzt hat und brauchst dieses beim neu Zeichnen dann einfach nur wieder auszulesen.
|
Re: VirtualStringTree Nodes Farben nachträglich ändern
Daran hab ich garnet gedacht ^^
Vielen dank ^^ ich probiers mal aus... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:32 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz