Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi DBGrid Zelle einfärben [erledigt] (https://www.delphipraxis.net/89343-dbgrid-zelle-einfaerben-%5Berledigt%5D.html)

StoRmtec 29. Mär 2007 20:11

Datenbank: MySQL • Version: 5 • Zugriff über: Zeos

DBGrid Zelle einfärben [erledigt]
 
Hallo Community Member

Ich stehe schon seit längerem an. Habe schon die ganze suche durchsucht habe auch was gefunden aber ich komme leider nicht weiter.
Es soll wenn in der liefer tabelle unter bestellstatus das wort erledigt vorkommen so soll er mir in der DBGrid wo das angezeigt wird die Zelle grün färben.
Komme da leider nicht mehr weiter.

Hätte es schon so probiert aber da kommt nichts.
Delphi-Quellcode:
procedure Tunitliefer_bestell.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
 const
  parr : array[0..2] of string =();
  var
s : string;
begin
     s := uppercase(ZTable1.FieldByName('bearbeitungsstatus').AsString);
   if s = 'erledigt' then begin
     dbgrid1.Canvas.Brush.Color := clblue;
     Canvas.FillRect(Rect);
   end;
   dbgrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
 end;


Vielleicht kann mir ja wer helfen.

LG StoRmtec

mr2 29. Mär 2007 20:36

Re: DBGrid Zelle einfärben
 
Zitat:

Zitat von StoRmtec
Delphi-Quellcode:
  s := uppercase(ZTable1.FieldByName('bearbeitungsstatus').AsString);
  if s = 'erledigt' then begin

für uppercase wirst Du nie 'erledigt' erhalten, sondern höchstens 'ERLEDIGT' :lol:

mr2

StoRmtec 29. Mär 2007 20:51

Re: DBGrid Zelle einfärben
 
Hallo

Habe es schon geschafft habe es anders gemacht.

Wenn es wer braucht mal

Delphi-Quellcode:
procedure Tunitliefer_bestell.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
  var
  holdColor: TColor;
 begin
 holdColor := DBGrid1.Canvas.Brush.Color;
  if Column.FieldName = 'bearbeitungsstatus' then
    if (Column.Field.Text = 'erledigt') then
    begin
      DBGrid1.Canvas.Brush.Color := clgreen;
      DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
      DBGrid1.Canvas.Brush.Color := holdColor;
    end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz