![]() |
in StringGrid in jeder Zeile eine andere Zelle einfärben?
Hallo DP'ler,
wie kann ich in einem StringGrid in jeder Zeile eine andere Zelle rot einfärben? Ich hab schon einiges versucht, aber entweder es wird die ganze Spalte eingefärbt, oder nur die entsprechende Zelle in der letzten Zeile! Vielen Dank schonmal! MfG Delphi-Coder |
Re: in StringGrid in jeder Zeile eine andere Zelle einfärben
Hallo
mit diesem Beispiel kannst Du eine bestimmte Zelle einfärben, vielleicht hilfts ja weiter :roll:
Delphi-Quellcode:
Der Code muss in das Ereignis OnDrawCell eingefügt werden.
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); var s: String; begin if (ACol = 2) and (ARow = 3) then with Sender as TStringGrid do begin s := Cells[ACol, ARow]; Canvas.Brush.Color := clRed; Canvas.FillRect(Rect); DrawText(Canvas.Handle, PChar(s), Length(s), Rect, DT_LEFT); end; end; Gruß s14 |
Re: in StringGrid in jeder Zeile eine andere Zelle einfärben
Danke für die Antwort! Das hat funktioniert! Bei meinem Code hatte ich nur eine if-Anweisung falsch gesetzt!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:09 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