![]() |
TDBAdvGrid - Zeilen einfärben
Hallo zusammmen,
ich benutze das TDBAdvGrid von TMS. Ich möchte gerne in einem Grid die Farbe einfärben, folgendes habe ich bisher gemacht:
Delphi-Quellcode:
Es soll also bei einem Wert in dem Feld "SAT" von größer 0, die Zeile komplett eingefärbt werden mit
procedure TfrmMain.Grid1DrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState); begin If Query1.FieldByName( 'SAT' ).AsInteger > 0 then Grid1.Canvas.Brush.Color := clMaroon; end; clMaroon. Es funktioniert leider nicht... Hat jemand eine Idee, irgendwo habe ich bestimmt einen Denkfehler.. Vielen Dank. |
Re: TDBAdvGrid - Zeilen einfärben
Du setzt ja nur die Pinselfarbe, ohne zu zeichnen.
|
Re: TDBAdvGrid - Zeilen einfärben
Wie heisst die Funktion, das er das auch Pinselt bei dem TMS Grid?
|
Re: TDBAdvGrid - Zeilen einfärben
Canvas.FillRect, denke ich mal. Danach musst Du aber neu beschriften.
|
Re: TDBAdvGrid - Zeilen einfärben
Danke, das habe ich mir eigentlich einfacher vorgestellt,
da bei der Farbe Schwarz, die Schriffarbe automatisch auch dann gegenteilig sich einstellen müsste... |
Re: TDBAdvGrid - Zeilen einfärben
Du könntest die Farben ja exklusiv verodern.
|
Re: TDBAdvGrid - Zeilen einfärben
die farben sind unterschiedlich....
d.h. für bestimmte werte in der datenbank, kann der benutzer sich die Farben ausdenken... |
Re: TDBAdvGrid - Zeilen einfärben
Ich meinte ja auch Hintergrund- und Schriftfarbe.
|
Re: TDBAdvGrid - Zeilen einfärben
versteh ich nicht, was du meinst, kannst du es mir erklären?
|
Re: TDBAdvGrid - Zeilen einfärben
Beispiel (das kann man natürlich noch schöner machen):
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin Color := Random(clWhite); Label1.Font.Color := Color xor clWhite; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:23 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