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)