Hallo,
ich habe hier im Forum gesucht wie man im DBGrid spalten oder Zellen einfärben kann und bin auch fündig geworden. Jetzt habe ich mir folgenden Code erstellt:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If Query1.Fields[12].AsString = 'N' then DbGrid1.Canvas.Brush.Color := clRed; end; |
Allerdings funktioniert das nicht. Er macht mir einfach keine Spalte Rot! Obwohl da welche dabei sind bei denen er das tun sollte.
Dann habe ich diesen Code probiert:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If Query1.Fields[12].AsString = 'N' then DbGrid1.Font.Color := clRed; end; |
Dann macht er mir aber die Gesamte Schrift im DBGrid Rot sobald die bedingung einmal zutrifft.
Weiß jemand wie ich den oberen Code richtig benutzen muss damit meine Spalten Rot werden?
Gruß Andi
Solange die Bombe tickt ist alles in Ordnung, erst wenn sie damit aufhört wird es problematisch...