Einzelnen Beitrag anzeigen

Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
947 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

Re: Prinzipielle Frage zu OnDataChange von Datasource

  Alt 18. Dez 2009, 17:42
Hallo

am besten vermerkt ihr in einer Variablen IsRunning : Boolean ob ihr in eurer protected Routine seid und
in der Variablen CurrentID : Integer welcher der 'aktuelle' Datensatz ist.
zB.
Delphi-Quellcode:
...
type
  Txx = class(Txxx)
  private
   IsRunning : Boolean;
   CurrentID : Integer;
  protected
   procedure InternalDataChange;
  public
  end;
...
procedure Txx.DataChange(Sender: TObject);
begin
  if( (FDataLink.Field <> nil) and not FDataLink.DataSourceFixed) and
  ((FDataLink.KeyField.AsInteger <> CurrentID) and not IsRunning)) and
  ((FDataLink.KeyFieldName <> '') or (FDataLink.ImageNameFieldName <> '')) then
  begin
    ...
    InternalDataChange;
    ...
  end;
end;
...
Viele Grüße

Alter Mann
  Mit Zitat antworten Zitat