![]() |
TMS TAdvStringGrid, RowSelect, Colors[] wird überschrieben
Hallo #,
ich benutze das TAdvStringGrid. Mit
Delphi-Quellcode:
kann ich je bequem auf Zelle eine Farbe setzen.
Grid.Colors[1,1]:= clRed
Dumm nur, dass bei RowSelect die komplette Zeile mit Grid.SelectionColor überschrieben wird. Ich möchte aber, dass meine eine Zelle trotz der Markierung der Zeile rot bleibt. #Update:# hmmm Lösung mit OnDrawCell.
Delphi-Quellcode:
Schön wäre es aber, wenn es auch mit Colors[] funktionieren würde.
procedure TForm1.Grid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); begin if (ACol=3) and (ARow=3) then begin Grid1.Canvas.Font.Color:= clRed; if ARow=Grid1.Row then begin Grid1.Canvas.Brush.Color:= Grid1.SelectionColor; end else begin Grid1.Canvas.Brush.Color:= Grid1.Color; end; Grid1.Canvas.FillRect(Rect); Grid1.Canvas.TextOut(Rect.Left+3, Rect.Top+3, Grid1.Cells[ACol,ARow]); end; end; Wie mache ich das ? Danke Heiko |
AW: TMS TAdvStringGrid, RowSelect, Colors[] wird überschrieben
Hallo Heiko,
schon mal OnGetCellColor angeschaut? Da kommt imho auch ein Flag mit, der anzeigt ob die Zelle gerade selektiert wird. Grüße |
AW: TMS TAdvStringGrid, RowSelect, Colors[] wird überschrieben
Hallo,
und was nützt mir das ? Nach dem OnGetCellColor wird bei Selektierung meine Farbe vom Grid wieder überschrieben ;( Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:50 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