![]() |
Zeilen eines StringGrids färben. Aktive Zelle färben
Folgender Code färbt jede zweite Zeile eines StringGrids ein.
Wenn RowSelect = False ist wird die Zelle die den Fokus besitzt in Blau dargestelle. Das sollte dan eigentlich an alle anderen Grids angepasst werden können.
Delphi-Quellcode:
[edit=Matze]Code formatiert. Mfg, Matze[/edit]
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); begin if (ACol > 0) and (ARow > 0) then begin with (Sender as TStringGrid) do begin if ((ARow mod 2) = 0) then //jede zweite Zeile berücksichtigen begin if (not (gdSelected in State)) then begin Canvas.Brush.Color := clGreen; //Farbe die jede zweite Zeile bekommen soll. Canvas.FillRect(Rect); end; end; if ((not (goRowSelect in Options)) and (gdFocused in State)) then //Wenn RowSelect = False die aktive Zelle blau färben begin Canvas.Brush.Color := clBlue; //Farbe der selektierten Zelle wenn RowSelect = False; Canvas.FillRect(Rect); end; Canvas.TextOut(Rect.Left + 2, Rect.Top + 1, StringGrid1.Cells[ACol, ARow]); //Denn Text in der Zelle ausgeben end; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:26 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