Architektur von ActiveX-Steuerelementen
Die ActiveX-Steuerelementtechnologie basiert auf vielen Objekten und Schnittstellen auf niedrigerer Ebene in OLE. Die genauen Schnittstellen, die für ein Steuerelement verfügbar sind, variieren je nach Ihren Funktionen. Dieser Abschnitt befasst sich genauer mit den Funktionen, die ein Steuerelement bieten kann.
ActiveX-Steuerelemente werden verwendet, um die Bausteine zum Erstellen von Benutzeroberflächen in Anwendungen bereitzustellen. Beispielsweise ist eine Schaltfläche, die eine Aktion in der Containeranwendung initiiert, wenn darauf geklickt wird, ein einfaches Steuerelement. Die folgenden Aspekte sind an der Bereitstellung dieser Bausteine für die Benutzeroberfläche beteiligt:
- Ein Steuerelement kann in seinen Containerclient eingebettet werden, um einige Benutzeroberflächenaktivitäten innerhalb des Clients zu unterstützen. Daher muss ein Steuerelement eine visuelle Darstellung von sich selbst bereitstellen, wenn es in den Container eingebettet ist und eine Möglichkeit zum Speichern des Zustands bereitstellen muss, z. B. seine Eigenschaftswerte und seine Position innerhalb des Containers. Der Client muss unterstützen, dass es sich um einen Container mit darin eingebetteten Objekten handeln muss.
- Durch aktivieren des Steuerelements mithilfe einer Tastatur oder Maus initiiert der Endbenutzer eine Aktion in der Clientanwendung. Daher muss ein Steuerelement auf Tastaturaktivitäten reagieren und mit seinem Client kommunizieren können, damit es seinen Container über seine Aktivitäten benachrichtigen und Ereignisse im Client auslösen kann.
- Der Client stellt in der Regel auch eine Programmiersprache bereit, über die der Endbenutzer Aktionen initiieren kann, die von den Eigenschaften und Methoden des Steuerelements bereitgestellt werden. Daher muss ein Steuerelement auch automatisierungs- und einige Entwurfszeit- und Laufzeitfeatures unterstützen.
Aufgrund seiner Rolle bei der Bereitstellung von Benutzeroberflächenbausteinen unterstützt ein Steuerelement in der Regel Features in den folgenden Bereichen, die OLE-Technologien verwenden, wie angegeben:
-
Eigenschaften und Methoden
-
Wie jedes OLE-Objekt kann ein Steuerelement einen Großteil seiner Funktionalität über eine Reihe eingehender Schnittstellen mit Eigenschaften und Methoden bereitstellen. Der Container kann zusätzliche Umgebungseigenschaften bereitstellen und die Erweiterung der Eigenschaften des Steuerelements durch Aggregation unterstützen. Diese Features basieren auf OLE-Automatisierung, Eigenschaftenseiten, verbindebaren Objekten und ActiveX-Steuerelementtechnologien.
-
-Ereignisse
-
Neben der Bereitstellung von Eigenschaften und Methoden kann ein ActiveX-Steuerelement auch ausgehende Schnittstellen bereitstellen, um den Client über Ereignisse zu benachrichtigen. Der Client muss die Behandlung dieser Ereignisse unterstützen. Diese Features verwenden OLE-Automatisierung und verbindebare Objekte.
-
visuelle Darstellung
-
Ein Steuerelement kann die Positionierung und Anzeige innerhalb des Containers unterstützen. Der Container positioniert das Steuerelement und bestimmt seine Größe. Diese Features verwenden zusammengesetzte Dokumenttechnologie, einschließlich OLE-Drag- und Drop-Technologie.
-
Tastaturbehandlung
-
Ein Steuerelement kann auf Zugriffstasten reagieren, sodass der Endbenutzer Aktionen initiieren kann, die vom Steuerelement ausgeführt werden. Der Container verwaltet Tastaturaktivitäten für alle eingebetteten Steuerelemente. Diese Features verwenden Steuerelement- und Verbunddokumenttechnologien.
-
Persistenz
-
Ein Steuerelement kann seinen Zustand speichern. Der Client verwaltet die Persistenz seiner eingebetteten Steuerelemente. Diese Features verwenden strukturierte Speicher- und Objektpersistenztechnologien.
-
Registrierung und Lizenzierung
-
Ein Steuerelement unterstützt in der Regel die Selbstregistrierung und erstellt eine Reihe von Registrierungseinträgen, wenn es instanziiert wird. Ein Steuerelement kann auch lizenziert werden, um unbefugte Verwendung zu verhindern.
Die meisten dieser Features umfassen sowohl das Steuerelement als auch den Clientcontainer.
Verwandte Themen