Einzelnen Beitrag anzeigen

Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#1

BDGrid sortieren nach zeilen farbe

  Alt 1. Mai 2011, 11:51
Datenbank: firebird • Version: ? • Zugriff über: Connection
Habe zwei Fragen!

1.) DBGrid nach Zeilenfarbe sortieren!
Alles was gelb ist nach oben

2.) wenn ein neuer Datensatz gelesen wird [refresh] aber nur bei Zeile gelb,
soll einmalig eine wav Datei abgespielt werden. Oder Beep würde auch gehen!

Delphi-Quellcode:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
  var Wert: string;
begin
  Wert := DBGrid1.DataSource.DataSet.FieldByName('STATUS').Value;
  if Wert = 'Erfasstthen begin
    DBGrid1.Canvas.Brush.Color := clYellow;
    DBGrid1.Canvas.Font.Color := clblack;
  end else if Wert = 'Disponiertthen begin
    DBGrid1.Canvas.Brush.Color := clFuchsia;
    DBGrid1.Canvas.Font.Color := clblack;
   end else if Wert = 'Beendetthen begin
    DBGrid1.Canvas.Brush.Color := cllime;
    DBGrid1.Canvas.Font.Color := clblack;
   end else if Wert = 'Terminthen begin
    DBGrid1.Canvas.Brush.Color := clAqua;
    DBGrid1.Canvas.Font.Color := clblack;
   end else if Wert = 'Unwetterthen begin
    DBGrid1.Canvas.Brush.Color := clWhite;
    DBGrid1.Canvas.Font.Color := clNavy;
   end else if Wert = 'Geschlossenthen begin
    DBGrid1.Canvas.Brush.Color := clgreen;
    DBGrid1.Canvas.Font.Color := clblack;
   end else if Wert = 'Alarmiertthen begin
    DBGrid1.Canvas.Brush.Color := clWhite;
    DBGrid1.Canvas.Font.Color := clred;
  end else begin
    DBGrid1.Canvas.Brush.Color := clWhite;
    DBGrid1.Canvas.Font.Color := clblack;
  end;
  DBGRid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
In Delphi 5
  Mit Zitat antworten Zitat