Mega Code Archive

 
Categories / Delphi / Graphic
 

Color a TDBGrid

Title: color a TDBGrid? // Function to color a DBGrid (declared as private) // Funktion zum Einfärben des DBGrids (als private deklariert) procedure TForm1.ColorGrid(dbgIn: TDBGrid; qryIn: TQuery; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); var iValue: LongInt; begin // color only the first field // nur erstes Feld einfärben if (DataCol = 0) then begin // Check the field value and assign a color // Feld-Wert prüfen und entsprechende Farbe wählen iValue := qryIn.FieldByName('HINWEIS_COLOR').AsInteger; case iValue of 1: dbgIn.Canvas.Brush.Color := clGreen; 2: dbgIn.Canvas.Brush.Color := clLime; 3: dbgIn.Canvas.Brush.Color := clYellow; 4: dbgIn.Canvas.Brush.Color := clRed; end; // Draw the field // Feld zeichnen dbgIn.DefaultDrawColumnCell(Rect, DataCol, Column, State); end; end; procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin ColorGrid(DBGrid1, Query1, Rect, DataCol, Column, State); end;