Active Form- oder ActiveX-Elementexperte
Nach oben zu Menü Datei
Datei > Neu > Weitere > <Personality> > ActiveX > Active Form
Datei > Neu > Weitere > <Personality> > ActiveX > ActiveX-Element
- Mit dem Active Form-Experten fügen Sie einem ActiveX-Bibliotheks-Projekt ein Active Form hinzu.
- Mithilfe des ActiveX-Elementexperten erstellen Sie ein ActiveX-Steuerelement aus einem VCL-Steuerelement. Alle Eigenschaften, Methoden und Ereignisse des VCL-Steuerelements werden für das ActiveX-Steuerelement übernommen, das der Experte erstellt.
Hinweis: Bevor Sie ein Active Form oder ein ActiveX-Steuerelement erstellen können, müssen Sie zuerst eine ActiveX-Bibliothek anlegen. Diese beiden Experten werden in der Objektgalerie erst aktiviert, wenn Sie eine ActiveX-Bibliothek erstellt haben (durch Erstellen einer ActiveX-Bibliothek wird ein DLL-Projekt (Dynamic Link Library) angelegt, das als Host für In-Process-ActiveX-Objekte verwendet werden kann). Eine Anleitung finden Sie unter COM-Experten verwenden.
Element | Beschreibung |
---|---|
Name der CoClass |
Geben Sie den Namen des Steuerelements ein, das implementiert werden soll (also den Namen der CoClass aus der Typbibliothek). Die erzeugte Implementierungsklasse hat denselben Namen mit einem vorangestellten ‘T’. |
Beschreibung |
Geben Sie eine optionale Beschreibung der Komponente ein, die Sie erstellen. |
Wählen Sie das Threading-Modell aus, um festzulegen, wie COM Aufrufe des Interface des Active Form oder des ActiveX-Elements serialisiert. Das gewählte Threading-Modell bestimmt, wie das Steuerelement registriert wird. Sie müssen sicherstellen, dass die Implementierung dem gewählten Modell entspricht. Der Experte legt immer Apartment als Threading-Modell fest. Dies ist kein Problem, solange Ihr ActiveX-Projekt nur ein einziges Steuerelement enthält. Wenn Sie dem Projekt jedoch weitere Steuerelemente hinzufügen, sind Sie für die Bereitstellung der Thread-Unterstützung verantwortlich. | |
Komponentenname |
Wählen Sie aus der Dropdown-Liste die VCL-Komponente aus, die als Vorfahre für das ActiveX-Steuerelement verwendet werden soll. Bei einem Active Form ist die Komponente immer TActiveForm. |
Interface |
Gibt den Namen des Standard-Interface für das Steuerelement an. Standardmäßig ist dies der Name der CoClass mit vorangestelltem 'I'. |
Versionsinformation hinzufügen |
Sie können Versionsinformationen, wie das Copyright oder eine Dateibeschreibung, in das Steuerelement aufnehmen. Diese Informationen können in einem Browser angezeigt werden. Einige Host-Clients, z.B. Visual Basic 4.0, benötigen Versionsinformationen, oder sie nehmen das Steuerelement nicht an. Geben Sie die Versionsinformationen auf der Registerkarte Versionsinformationen des Dialogfeldes Projekt > Optionen an. |
Threading-Modelle
ActiveX-Steuerelemente können die folgenden Threading-Modelle verwenden:
Modell | Beschreibung |
---|---|
Einfach |
Es kann immer nur ein Client-Thread behandelt werden. COM serialisiert zu diesem Zweck alle eingehenden Aufrufe. Im Quelltext braucht keine Thread-Unterstützung implementiert zu werden. |
Apartment |
Auf jedes von einem Client instantiierte Steuerelement greift immer nur ein Thread zu. Sie müssen Schutzmaßnahmen implementieren, die verhindern, dass mehrere Threads auf den globalen Speicher zugreifen. Objekte können aber sicher auf ihre eigenen Instanzdaten (Eigenschaften und Elemente) zugreifen. |
Frei |
Jede Steuerelementinstanz kann von mehreren Threads gleichzeitig aufgerufen werden. Sie müssen sowohl die Instanzdaten als auch den globalen Speicher schützen. |
Beides |
Dieses Modell entspricht dem vorhergehenden, stellt aber sicher, dass alle von Clients erstellten Callbacks in demselben Thread ausgeführt werden. Das bedeutet, dass Sie Werte, die als Parameter an Callback-Funktionen übergeben werden, nicht zu schützen brauchen. |
Neutral |
Mehrere Clients können das Steuerelement gleichzeitig in verschiedenen Threads aufrufen, aber COM stellt sicher, dass die Aufrufe nicht miteinander in Konflikt geraten. Sie müssen Thread-Konflikte verhindern, die globale Daten und Instanzdaten betreffen, auf die von mehreren Methoden zugegriffen wird. Dieses Modell sollte nicht bei Steuerelementen mit Benutzeroberflächen verwendet werden. Das Modell steht nur unter COM+ zur Verfügung. Es wird unter COM auf das Apartment-Modell abgebildet. |
Siehe auch
- ActiveX-Bibliothek
- COM-Experten verwenden
- ActiveX-Steuerelemente erstellen
- ActiveX-Steuerelemente verwenden
- ActiveX-Steuerelemente aus VCL-Steuerelementen erstellen
- ActiveForm auf der Basis eines VCL-Formulars erstellen
- ActiveX-ActiveForm mit VCL-Formularen erzeugen
- ActiveX-Schaltfläche mit VCL-Formularen erzeugen
- Ein Threading-Modell auswählen