Freigeben über


MFC-ActiveX-Steuerelemente

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

ActiveX-Steuerelementinteraktion

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:

Grundlegende Komponenten eines ActiveX-Steuerelements

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.

Interaktion zwischen Steuerelementen in Windows und ActiveX-Steuerelement-Containern

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

Kommunikation zwischen ActiveX-Steuerelementcontainer und 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.

Aktiv und inaktive Status eines ActiveX-Steuerelements

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)

Windows-Meldungsverarbeitung ActiveX-Steuerelement mit Fenster (aktiv)

Serialisierung

Die Möglichkeit, die Daten zu serialisieren, manchmal als Dauerhaftigkeit, ermöglicht es dem Steuerelement, um den Wert der Eigenschaften in den permanenten Speicher zu schreiben.Steuerelemente können durch Lesen der Objektzustand dann aus dem Speicher neu erstellt werden.

Beachten Sie, dass ein Steuerelement zum Abrufen nicht für den Zugriff auf den Speichermedium zuständig ist.Stattdessen ist der Container des Steuerelements zum Stellen des Steuerelements mit einem Speichermedium zur Verwendung in den entsprechenden Zeiten verantwortlich.Weitere Informationen über die Serialisierung finden Sie im Artikel MFC-ActiveX-Steuerelemente: Serialisieren.Weitere Informationen zum Optimieren von Serialisierung finden Sie unter Optimieren der Initialisierung und Dauerhaftigkeit in ActiveX-Steuerelemente: Optimierung.

ActiveX-Steuerelement-Klassen installieren und Tools

Wenn Sie Visual C++ installieren, werden die MFC-ActiveX-Steuerelement-Klassen und der Einzelhandel die Debug- und ActiveX-Steuerelement-Laufzeit DLL automatisch installiert, wenn ActiveX-Steuerelemente im Setup aktiviert sind (diese werden standardmäßig aktiviert).

Standardmäßig werden die ActiveX-Steuerelement-Klassen und Tools in den folgenden Unterverzeichnisse unter \ Programme \ Microsoft Visual Studio .NET installiert:

  • \ Common7 \ Tools

    Enthält die Dateien Testcontainer sowie seine Hilfedateien (TstCon32.exe).

  • \ Vc7 \ atlmfc \ Include

    Enthält die Includedateien, die benötigt werden, um mit ActiveX-Steuerelementen der Entwicklung von MFC

  • \ Vc7 \ atlmfc \ \ Kraftstoffregler src

    Enthält den Quellcode für bestimmte ActiveX-Steuerelement-Klassen in MFC

  • \ Vc7 \ atlmfc \ lib

    Enthält die Bibliotheken, die MFC mit ActiveX-Steuerelementen für die Entwicklung erforderlichen

Darüber hinaus sind Beispiele für MFC-ActiveX-Steuerelemente.Weitere Informationen zu diesen Beispielen finden Sie unter Kontrollproben: ActiveX-Steuerelemente MFC-basierte

Siehe auch

Weitere Ressourcen

Benutzeroberfläche