Einzelnen Beitrag anzeigen

sveni2211

Registriert seit: 22. Dez 2006
Ort: Friedrichroda
38 Beiträge
 
#1

DrawColumnCell - Zelle wird einfach nicht gezeichnet

  Alt 18. Mär 2008, 12:18
Datenbank: FireBird • Version: 1.5.xxx • Zugriff über: ZEOS
Hallo.

Ich habe ein DBGrid, in welchem ich eine Spalte je nach Wert einfärben möchte.

Ich habe dazu folgende Prozedur (erstmal nur zum testen das sich etwas tut) angelegt:

Delphi-Quellcode:
procedure TfMain.DBGrid_ProgrammDrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
  if Column.FieldName=ZQuery_ProgrammISTOK.FieldName then
    begin
      if Column.Field.AsString='jathen Canvas.Pen.Color:=clGreen
      else Canvas.Pen.Color:=clRed;
      Canvas.Pen.Style:=psSolid;
      Canvas.Rectangle(Rect); // Rechteck, nur Außenlinlien?
      Canvas.FillRect(Rect); // Versuch 2, gefülltes Rechteck
      Canvas.Brush.Color:=clBlack;
      Canvas.Pen.Color:=clBlack;
      Canvas.TextOut(Rect.Left+1,Rect.Top+1,Column.Field.AsString);
    end
  else DBGrid_Programm.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
Habe nun schon einiges probiert. Die anderen Zellen werden alle angezeigt. Aber die, wo sich was verändern soll, bleibt einfach weiß. Was mache ich falsch? Sieht noch jemand einen Fehler?
  Mit Zitat antworten Zitat