Hi Ramses,
dein Problem liegt in der Handhabung von OnDrawColumnCell. Das ist eigentlich ein Ereignis, bei dem Du direkt in das Zeichnen des Grids eingreifen kannst. Durch das ändern des FieldTextes wird die Methode jedoch erneut aufgerufen usw.
hier mal ein einfaches Beispiel, was Du mit der Methode machen kannst.
Delphi-Quellcode:
procedure TfEventLog.dbgLogfileDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var
s : string;
begin
if DataCol = 1 then
begin
//neuen Text festlegen
s:= '-> ' + Column.Field.Text;
//den, vom System gezeichneten, Inhalt löschen
dbgLogfile.Canvas.FillRect(Rect);
//eigenen Text reinschreiben
dbgLogfile.Canvas.TextRect(Rect,Rect.Left+4,Rect.Top+2,s);
end;
end;
Hoffe das hilft ein wenig.
Ciao Marco