Zitat von
Andidreas:
dbgrid_pgi.DefaultDrawColumnCell(Rect, DataCol, Column, State);
es werden alles spalten des dbgrids geändert, nur nicht die erste... weiß jemand warum?
also die letzte Zeile sieht für mich bisschen komisch aus, ist das eine Funktion von dir?
ansonsten wurde bereits genannt, dass du in einem else-Zweig die default-Farbe setzen solltest.
so in etwa sollte das
imho aussehen
Delphi-Quellcode:
if (gdSelected in State) then
begin
dbgrid_pgi.Canvas.Font.Color := clGray;
dbgrid_pgi.Canvas.Brush.Color := $00FDC699;
end else
begin
dbgrid_pgi.Canvas.Font.Color := dbgrid_pgi.Font.Color;
dbgrid_pgi.Canvas.Brush.Color := dbgrid_pgi.Color;
end;
dbgrid_pgi.Canvas.FillRect(rect);
dbgrid_pgi.Canvas.TextOut(rect.left+2,rect.top+2,dbgrid_pgi.Cells[Col,Row]);
HTH Frank