Entwickler-Ecke

Datenbanken - DB durchsuchen und dbgrid einfärben


foxy - Mo 13.01.03 09:40
Titel: DB durchsuchen und dbgrid einfärben
guden ... mal ne frage ... also durchsuchen geht soweit der findet dann den Datensatz, nur würde ich gerne wenn er das findet dies ka blau färben

zu den daten
Paradox7 DB, Daten im DBgrid ausgegeben und suche tue ich mit dem code

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
try
   Table1.Locate('Firma',Edit1.Text,[loCaseInsensitive]);
   Table1.Locate('Produktarten',Edit2.Text,[loCaseInsensitive]);
 finally
   Pagecontrol1.ActivePageIndex:=2;
   Edit1.Clear;
   Edit2.Clear;
 end;


also einfach der gefundene datensatz enfärben...


Mash - Di 14.01.03 16:14

Moin,

versuch's mal hiermit:


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure TFrmMain.DBGridQueryDrawDataCell(Sender: TObject;
  const Rect: TRect; Field: TField; State: TGridDrawState);
var
   Grid: TDBGrid;
   Schrift, Hintergrund: TColor;
begin
   Grid := TDBGrid(Sender);
   Hintergrund := clWhite;
     if (Field.FieldName = 'IrgendeinWert') then //hier zu prüfendes Feld einfügen
       if (Field.AsFloat > 0) then // Bedingung
         Schrift := clGreen
       else
         Schrift := clRed // negative Werte rot, positive Werte grün
     else
       Schrift := clBlack; // alle anderen Felder <> 'IrgendeinFeld' schwarz

  Grid.Canvas.Font.Color := Schrift;
  Grid.Canvas.Brush.Color := Hintergrund;
  Grid.DefaultDrawDataCell(Rect, Field, State);
end;


Gruß
mash