Ein ActiveX-Steuerelement ist eine wiederverwendbare Softwarekomponente, die auf dem Component Object Model (COM) basiert. Dieses Modell unterstützt zahlreiche OLE-Funktionen und kann an die unterschiedlichsten Softwareanforderungen angepasst werden.
ActiveX-Steuerelemente sind für die Verwendung in gewöhnlichen ActiveX-Steuerelement-Containern und im Internet in der World Wide Web-Seiten vorgesehen. Sie können entweder mit ActiveX-Steuerelementen erstellen, MFC oder mit Active Template Library (ATL) im Folgenden beschrieben.
Ein ActiveX-Steuerelement kann sich in einem eigenen Fenster auf Ereignisse reagieren, zeichnen (z. B. Mausklicks) und werden durch eine verwaltete Schnittstelle, die die Eigenschaften und Methoden enthält, die zu den Filtern in den Automatisierungsobjekten ähneln.
Mit diesen Steuerelementen können aus vielen entwickelt wurden, Datenbankzugriff verwenden wie überwachende Daten oder Dargraphisch stellen.
Neben ihrer Portabilität von ActiveX-Steuerelementen Funktionen unterstützen die zuvor nicht mehr verfügbar, z. B. ActiveX-Steuerelemente Kompatibilität mit vorhandenen OLE-Containern und der Möglichkeit, ihre Menüelemente mit den OLE-Container Menüs zu integrieren. Darüber hinaus unterstützt ein ActiveX-Steuerelement vollständig ermöglicht die Automatisierung das Steuerelement im gelesenen Exposee \ schreibt eine Reihe von Methoden und Eigenschaften, die vom Steuerelement Benutzern aufgerufen werden können.
Sie können auch ActiveX-Steuerelemente fensterlose Steuerelemente zu erstellen, die nur ein Fenster erstellen, wenn sie aktiv sind.
Fensterlose Steuerelemente beschleunigen die Anzeige der Anwendung und führen es möglich, die transparenten und nonrectangular Steuerelemente verfügen. Sie können ActiveX-Steuerelement-Eigenschaften auch asynchron laden.
Ein ActiveX-Steuerelement wird als prozessinternen Server implementiert (in der Regel ein kleines Objekt) der in jedem OLE-Container verwendet werden kann.
Beachten Sie, dass die volle Funktionalität eines ActiveX-Steuerelements nur verfügbar ist, wenn sie innerhalb eines OLE-Containers verwendet wird, der ActiveX-Steuerelementen zu berücksichtigen. Weitere Informationen finden Sie unter Anschluss-ActiveX-Kontrollen zu anderen Anwendungen für eine Liste von Containern, die ActiveX-Steuerelemente unterstützen. Dieser Containertyp, danach die als "Steuerelementcontainer," kann ein ActiveX-Steuerelement, indem er die Eigenschaften und Methoden des Steuerelements ausführen verwendet, und empfängt Benachrichtigungen vom ActiveX-Steuerelement in Form von Ereignissen. Die folgende Abbildung zeigt diese Interaktion.
Interaktion zwischen einem ActiveX-Steuerelement-Container und einem ActiveX-Steuerelement mit Fenster
So fügen Sie einige neuer Informationen zum Optimieren von ActiveX-Steuerelementen finden Sie unter MFC-ActiveX-Steuerelemente: Optimierung.
Um ein MFC-ActiveX-Steuerelement zu erstellen, finden Sie Erstellen Sie ein ActiveX-Steuerelement-Projekt.
Weitere Informationen finden Sie unter:
Ein ActiveX-Steuerelement verwendet verschiedene programmgesteuerte Elemente, die mit einem Steuerelementcontainer und effizient mit dem Benutzer interagieren.
Hierbei handelt es sich um Klasse COleControl, ein Satz von Ereignisauslösungsfunktionen und Dispatchzuordnung.
Jedes ActiveX-Steuerelementobjekt, die Sie erben einen leistungsstarken Satz von Funktionen aus einer MFC-Basisklasse entwickeln, COleControl.
Diese Funktionen umfassen die direkte Aktivierung und über Anwendungslogik.
COleControl kann das Steuerelementobjekt mit der gleichen Funktionen wie ein MFC-Fensterobjekt sowie die Möglichkeit bieten, Ereignisse auszulösen.
COleControl kann fensterlose Steuerelemente bereitstellen, die beruhen auf dem Container für einen Teil der Hilfe bei der Funktionalität, die ein Fenster (die Mausauswahl, den Tastaturfokus, führend) Bildlauf schnellerer Anzeige des Angebots, aber wesentlich bereitstellt.
Da die Steuerelementklasse von COleControl erbt sie die Funktion zu senden oder "Feuer" Ereignisse aufgerufen, die Meldungen an den Steuerelementcontainer, wenn bestimmte Anforderungen erfüllt sind.
Diese Ereignisse werden verwendet, um den Steuerelementcontainer zu benachrichtigen, wenn im Steuerelement etwas Wichtiges geschehen soll. Sie können zusätzliche Informationen über ein Ereignis an den Steuerelementcontainer senden, indem Sie Parameter an das Ereignis angefügt werden. Weitere Informationen zu ActiveX-Steuerelement-Ereignisse finden Sie im Artikel MFC-ActiveX-Steuerelemente: Ereignisse.
Das letzte Element ist eine Dispatchzuordnung, die verwendet wird, um eine Reihe von Funktionen und Methoden) (so genannte Attribute (Eigenschaften) des Steuerelements Benutzern verfügbar zu machen.
Eigenschaften können den Steuerelementcontainer oder dem Steuerelement Benutzern, um das Steuerelement auf verschiedene Arten zu bearbeiten. Der Benutzer kann die Darstellung des Steuerelements ändern, um bestimmte Werte des Steuerelements ändern oder Anforderungen vom Steuerelement, z. B. Zugriff auf einen bestimmten Datenelements stellen, das das Steuerelement beibehält. Diese Schnittstelle wird vom Steuerelemententwickler spezifisch und wird mithilfe Klassenansicht definiert. Weitere Informationen zu ActiveX-Steuerelement-Methoden und Eigenschaften finden Sie MFC-ActiveX-Steuerelemente: Methoden Artikel und Eigenschaften.
Wenn ein Steuerelement in einem Steuerelementcontainers verwendet wird, verwendet es zwei Mechanismen, um zu kommunizieren: Es macht Eigenschaften und Methoden verfügbar, und löst Ereignisse aus.
Die folgende Abbildung zeigt, wie diese beiden Mechanismen implementiert werden.
Kommunikation zwischen einem ActiveX-Steuerelement-Container und einem ActiveX-Steuerelement
In der vorherigen Abbildung veranschaulicht auch, wie andere OLE-Schnittstellen (außer Automatisierung und Ereignisse) durch Steuerelemente behandelt werden.
Die gesamte Kommunikation mit dem Container des Steuerelements wird durch COleControl ausgeführt.
Für einige Anforderungen des Containers zu bearbeiten, ruft COleControl -Memberfunktionen auf die in der Steuerelementklasse implementiert werden. Alle Methoden und einige Eigenschaften werden auf diese Weise behandelt. Die Klasse des Steuerelements kann die Kommunikation mit dem Container durch Aufrufen von Memberfunktionen von COleControl auch initiieren. Auf diese Weise werden Ereignisse ausgelöst.
Ein Steuerelement verfügt über zwei Grundzustände: aktiv oder inaktiv.
Herkömmlicherweise sind diese Bedingungen durch definiert, ob es sich bei dem Steuerelement um ein Fenster hat. Ein aktives Steuerelement verfügt ein Fenster. tat ein inaktives Steuerelement nicht. Mit der Einführung der fensterlosen Aktivierung, ist diese Unterscheidung nicht mehr universell, sondern gilt weiterhin auf viele Steuerelemente zu.
Wenn fensterloses Steuerelement aktiv wird, ruft es die Mauszeigererkennung, Tastaturfokus Bildlaufs und andere Windows-Dienste von seinem Container auf.
Sie können auch Bereitstellen Mausinteraktion zu den inaktiven Steuerelementen bereit. sowie Steuerelemente zu erstellen, die Warten Sie, bis aktiviert, um ein Fenster zu erstellen.
Wenn ein Steuerelement mit einem Fenster aktiv ist, wird es mit dem Steuerelementcontainer, welche Benutzer und Windows vollständig zu interagieren.
Die folgende Abbildung zeigt die Pfade der Kommunikation zwischen dem ActiveX-Steuerelement, den Steuerelementcontainer und dem Betriebssystem.
Windows-Nachrichtenverarbeitung in einem ActiveX-Steuerelement mit Fenster (sofern aktiv)