Zitat von
LOMBI:
mit folgendem Code möchte ich die gespeicherten Daten in TLabels anzeigen:
Delphi-Quellcode:
procedure TDemoForm.DBGridDemoDrawColumnCell (Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState;)
begin
LabelTel.Caption := FAdr.EditTel.Text;
LabelFax.Caption := FAdr.EditFax.Text;
LabelMob.Caption := FAdr.EditMob.Text;
...
end;
Das ist GANZ falsch!
OnDrawColumnCell wird 1. extrem oft aufgerufen und 2. für alle
im DBGrid sichtbaren Datensätze aufgerufen.
Richtig:
Das Event [TTable].
AfterScroll benützen:
Delphi-Quellcode:
procedure TForm1.Table1AfterScroll(Dataset:TDataset);
begin
LabelTel.Caption := Dataset.FieldByName('Tel').AsString;
...
end;