RTL-Aktionen
Nach oben zu RTL
GUI-Anwendungen enthalten häufig verschiedene Menüs, Symbolleisten-Schaltflächen und andere Steuerelemente, die denselben Code ausführen und bestimmte andere Eigenschaften, wie Anzeigetext, Hinweis, Tastenkürzel, Kontexthilfe usw., gemeinsam haben. Mit Aktionen können Sie den auszuführenden Code und die meisten der gemeinsamen Eigenschaften an einem Ort definieren, wodurch Ihr Code einfacher gewartet werden kann.
Eine Aktion ist ein Objekt, das eine Reaktion auf eine Benutzerinteraktion kapselt. Eine Aktion repräsentiert ein Befehlsobjekt in dem Befehlsentwurfsmuster (EN) der objektorientierten Programmierung. Die RTL stellt von GUI-Anwendungs-Frameworks unabhängige Aktionsfunktionen bereit.
Eine Aktion definiert Code, der ausgeführt wird, wenn Sie die Aktion ausführen, und Eigenschaften, die Aspekte der Aktion repräsentieren, wie z. B. ob sie ausgeführt werden kann oder nicht, mit welchem Tastenkürzel die Aktion ausgelöst wird oder durch welches Bild die Aktion repräsentiert wird.
Sie können Aktionen mit GUI-Steuerelementen, wie Menübefehlen oder Schaltflächen in der Symbolleiste, verknüpfen. Ein mit einer Aktion verknüpftes [[{{f|vcl|Frameworks and Libraries|GUI-Steuerelement]] wird "Client" der Aktion genannt. Wenn der Benutzer klickt oder auf andere Weise den Client einer Aktion auslöst, führt der Client die Aktion aus. Aktionen wirken sich auf ihre Clients aus. Zum Beispiel: Wenn eine Aktion deaktiviert ist, sind deren Clients ebenfalls deaktiviert.
Sie können bestimmte Aktionen auch mit einer "Ziel"-Komponente verknüpfen, die den Effekt empfängt, wenn die Aktion ausgeführt wird.
Die Haupt-RTL-Klasse für die Repräsentation einer Aktion ist TContainedAction. Für wirklich einfache Aktionen, die nur auszuführenden Code bereitstellen, oder zum Erstellen von benutzerdefinierten Klassen können Sie alternativ TBasicAction verwenden.
Definieren des Codes, den eine Aktion ausführt
Um Code zu definieren, den eine Aktion ausführt, erstellen Sie einfach eine Ereignisbehandlungsroutine für das Ereignis OnExecute der Aktion.
Registrieren von Standardaktionen
Verwenden Sie RegisterActions in einer IDE-Erweiterung, um benutzerdefinierte Aktionsklassen als Standardaktionen zu registrieren. Standardaktionen sind Aktionen, die Sie Ihrer Anwendung einfach mit der IDE hinzufügen können.