Zitat von
Hansa:
...Nichts, nur daß es nicht um Update usw. geht. ...
Das ist schon klar.
BeginUpdate macht aber nichts anderes als dafür zu sorgen das, in diesem Fall das SG, nicht neugezeichnet wird bis das EndUpdate aufgerufen wird. Genau dies ist nämlich das Nadelöhr beim Füllen von TStringListen, TListViews usw.
Aber Du kannst ja beide genannten Möglichkeiten kombinieren:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
myDrawCell : TDrawCellEvent;
begin
myDrawCell := StringGrid1.OnDrawCell; // Event "merken"
StringGrid1.OnDrawCell := nil; // Kein OnDrawCell
SGBeginUpdate(StringGrid1);
// Füllen des StringGrids mit Daten
SGEndUpdate(StringGrid1);
StringGrid1.OnDrawCell := myDrawCell; // gemerketes Event zuweisen
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"