Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#10

AW: Eigene Ereignisse auslösen

  Alt 26. Mai 2014, 02:53
Ja, Delphi ist im Grunde eine objekt-orientierte Programmiersprache (OOP), welche viel mit Events arbeitet, aber von Alleine passiert das auch nichts.

Was man machen kann, ist seinen Code in entsprechende Klassen aufzuteilen und die Events/Property entsprechend auszulegen.
Also z.B. gibt es dann irgendwo ein SMAXH-Property, welches im Setter prüft, ob sich der aktuelle Wert ändert und wenn ja, dann wird ein entsprechendes Ereignis ausgelöst.

Delphi-Quellcode:
procedure DoChange; // hier drin wird das OnChange-Event ausgelöst

FMyProp: Integer;
procedure SetMyProp(Value: Integer);
property MyProp: Integer read FMyProp write SetMyProp;

function GetMyPropX(Index: Integer): Integer; // man kann auch einen Getter/Setter für mehrere Property benutzen
procedure SetMyPropX(Index, Value: Integer);
property MyPropA: Integer index 1 read GetMyPropX write SetMyPropX;
property MyPropB: Integer index 2 read GetMyPropX write SetMyPropX;
property MyPropC: Integer index 3 read GetMyPropX write SetMyPropX;

procedure TMyClass.SetMyProp(Value: Integer);
begin
  if Value = MyProp then
    Exit;
  FMyProp := Value;
  DoChange;
end;
(nun nur noch alle nötigen Werte entsprechend dieser Property-Vorlage anlegen)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (26. Mai 2014 um 02:55 Uhr)
  Mit Zitat antworten Zitat