Einzelnen Beitrag anzeigen

grayfox

Registriert seit: 22. Jan 2003
Ort: Litschau
173 Beiträge
 
Delphi 4 Standard
 
#4

Re: Kollison OnDrawColumnCell und Anzeige in DBText

  Alt 11. Mär 2004, 19:08
hallo claudia!

versuchs mal so:

Delphi-Quellcode:
procedure DBGrid1.DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
  aValue: string;
begin
  if (gdSelected in State) or (gdFocused in State) then exit;

  if Column.Index = 3 then begin {nummer der spalte im dbgrid}
    aValue:= Column.Field.asString; {suchbegriff auslesen}
    if aValue = 'SVCDthen begin
      DBGrid1.Canvas.Brush.Color := clBlue;
      DBGrid1.Canvas.Font.Color := clYellow
    end else begin
      DBGrid1.Canvas.Brush.Color := clPurple;
      DBGrid1.Canvas.Font.Color := clWhite
    end;
  DBGRid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
bei der obigen lösung darfst du aber die spalte nicht verschieben

besser:

 if Column.Fieldname = 'Codecthen begin dann bleibt die reihenfolge der spalten im dbgrid egal.

zu der anzeige im dbedit-feld kann ich mich nur wiederholen...
sobald das dbgrid und das dbedit-feld an der gleichen datasource hängen, dann aktualisiert es sich
selbständig.
schau mal lieber nochmal nach, was du in deinem dbedit-feld als datasource eingetragen hast

liebe grüsse & gutes gelingen
stefan
  Mit Zitat antworten Zitat