COleControlSite-Klasse

Stellt Unterstützung für benutzerdefinierte clientseitige Steuerelement-Schnittstellen bereit.

Syntax

class COleControlSite : public CCmdTarget

Member

Öffentliche Konstruktoren

Name Beschreibung
COleControlSite::COleControlSite Erstellt ein COleControlSite-Objekt.

Öffentliche Methoden

Name Beschreibung
COleControlSite::BindDefaultProperty Bindet die Standardeigenschaft des gehosteten Steuerelements an eine Datenquelle.
COleControlSite::BindProperty Bindet eine Eigenschaft des gehosteten Steuerelements an eine Datenquelle.
COleControlSite::CreateControl Erstellt ein gehostetes ActiveX-Steuerelement.
COleControlSite::D estroyControl Zerstört das gehostete Steuerelement.
COleControlSite::D oVerb Führt ein bestimmtes Verb des gehosteten Steuerelements aus.
COleControlSite::EnableDSC Ermöglicht die Datenbeschaffung für eine Steuerelementwebsite.
COleControlSite::EnableWindow Aktiviert die Steuerelementwebsite.
COleControlSite::FreezeEvents Gibt an, ob die Steuerelementwebsite Ereignisse akzeptiert.
COleControlSite::GetDefBtnCode Ruft den Standardschaltflächencode für das gehostete Steuerelement ab.
COleControlSite::GetDlgCtrlID Ruft den Bezeichner des Steuerelements ab.
COleControlSite::GetEventIID Ruft die ID einer Ereignisschnittstelle für ein gehostetes Steuerelement ab.
COleControlSite::GetExStyle Ruft die erweiterten Formatvorlagen der Steuerelementwebsite ab.
COleControlSite::GetProperty Ruft eine bestimmte Eigenschaft des gehosteten Steuerelements ab.
COleControlSite::GetStyle Ruft die Stile der Steuerelementwebsite ab.
COleControlSite::GetWindowText Ruft den Text des gehosteten Steuerelements ab.
COleControlSite::InvokeHelper Rufen Sie eine bestimmte Methode des gehosteten Steuerelements auf.
COleControlSite::InvokeHelperV Rufen Sie eine bestimmte Methode des gehosteten Steuerelements mit einer variablen Liste von Argumenten auf.
COleControlSite::IsDefaultButton Bestimmt, ob das Steuerelement die Standardschaltfläche im Fenster ist.
COleControlSite::IsWindowEnabled Überprüft den sichtbaren Zustand der Steuerelementwebsite.
COleControlSite::ModifyStyle Ändert die aktuellen erweiterten Formatvorlagen der Steuerelementwebsite.
COleControlSite::ModifyStyleEx Ändert die aktuellen Formatvorlagen der Steuerelementwebsite.
COleControlSite::MoveWindow Ändert die Position der Steuerelementwebsite.
COleControlSite::QuickActivate Schnellaktiviert das gehostete Steuerelement.
COleControlSite::Tresor SetProperty Legt eine Eigenschaft oder Methode des Steuerelements fest, ohne dass eine Ausnahme ausgelöst werden kann.
COleControlSite::SetDefaultButton Legt die Standardschaltfläche im Fenster fest.
COleControlSite::SetDlgCtrlID Ruft den Bezeichner des Steuerelements ab.
COleControlSite::SetFocus Legt den Fokus auf die Steuerelementwebsite fest.
COleControlSite::SetProperty Legt eine bestimmte Eigenschaft des gehosteten Steuerelements fest.
COleControlSite::SetPropertyV Legt eine bestimmte Eigenschaft des gehosteten Steuerelements mit einer variablen Liste von Argumenten fest.
COleControlSite::SetWindowPos Legt die Position der Steuerelementwebsite fest.
COleControlSite::SetWindowText Legt den Text des gehosteten Steuerelements fest.
COleControlSite::ShowWindow Blendet die Steuerelementwebsite ein oder aus.

Geschützte Methoden

Name Beschreibung
COleControlSite::GetControlInfo Ruft Tastaturinformationen und Mnemonics für das gehostete Steuerelement ab.

Öffentliche Datenmember

Name Beschreibung
COleControlSite::m_bIsWindowless Bestimmt, ob das gehostete Steuerelement ein fensterloses Steuerelement ist.
COleControlSite::m_ctlInfo Enthält Informationen zur Tastaturbehandlung für das Steuerelement.
COleControlSite::m_dwEventSink Das Cookie des Verbindungspunkts des Steuerelements.
COleControlSite::m_dwMiscStatus Die verschiedenen Status für das gehostete Steuerelement.
COleControlSite::m_dwPropNotifySink Das IPropertyNotifySink Cookie des Steuerelements.
COleControlSite::m_dwStyle Die Stile des gehosteten Steuerelements.
COleControlSite::m_hWnd Das Handle der Steuerelementwebsite.
COleControlSite::m_iidEvents Die ID der Ereignisschnittstelle für das gehostete Steuerelement.
COleControlSite::m_nID Die ID des gehosteten Steuerelements.
COleControlSite::m_pActiveObject Ein Zeiger auf das IOleInPlaceActiveObject Objekt des gehosteten Steuerelements.
COleControlSite::m_pCtrlCont Der Container des gehosteten Steuerelements.
COleControlSite::m_pInPlaceObject Ein Zeiger auf das IOleInPlaceObject Objekt des gehosteten Steuerelements.
COleControlSite::m_pObject Ein Zeiger auf die IOleObjectInterface Schnittstelle des Steuerelements.
COleControlSite::m_pWindowlessObject Ein Zeiger auf die IOleInPlaceObjectWindowless Schnittstelle des Steuerelements.
COleControlSite::m_pWndCtrl Ein Zeiger auf das Fensterobjekt für das gehostete Steuerelement.
COleControlSite::m_rect Die Abmessungen der Steuerelementwebsite.

Hinweise

Diese Unterstützung ist die primäre Möglichkeit, mit der ein eingebettetes ActiveX-Steuerelement Informationen über die Position und den Umfang seiner Anzeigewebsite, seinen Moniker, seine Benutzeroberfläche, seine Umgebungseigenschaften und andere Vom Container bereitgestellte Ressourcen abruft. COleControlSiteimplementiert vollständig die IOleControlSite-, IOleInPlaceSite-, IOleClientSite-, IPropertyNotifySink-, IBoundObjectSite, INotifyDBEventsIRowSetNotify-Schnittstellen. Darüber hinaus wird die IDispatch-Schnittstelle (die Unterstützung für Umgebungseigenschaften und Ereignissenken bereitstellt) ebenfalls implementiert.

Um eine ActiveX-Steuerelementwebsite mithilfe COleControlSiteeiner Klasse zu erstellen, leiten Sie eine Klasse von COleControlSite. Überschreiben Sie in der CWndabgeleiteten Klasse für den Container (z. B. das Dialogfeld) die CWnd::CreateControlSite Funktion.

Vererbungshierarchie

CObject

CCmdTarget

COleControlSite

Anforderungen

Kopfzeile: afxocc.h

COleControlSite::BindDefaultProperty

Bindet die standardmäßige einfache gebundene Eigenschaft des aufrufenden Objekts, wie in der Typbibliothek markiert, an den zugrunde liegenden Cursor, der von den Eigenschaften DataSource, UserName, Password und SQL des Datenquellensteuerelements definiert wird.

virtual void BindDefaultProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    LPCTSTR szFieldName,
    CWnd* pDSCWnd);

Parameter

dwDispID
Gibt die DISPID einer Eigenschaft für ein datengebundenes Steuerelement an, das an ein Datenquellensteuerelement gebunden werden soll.

vtProp
Gibt den Typ der eigenschaft an, die gebunden werden soll , z. B. VT_BSTR, VT_VARIANT usw.

szFieldName
Gibt den Namen der Spalte im Cursor an, der vom Datenquellensteuerelement bereitgestellt wird, an das die Eigenschaft gebunden wird.

pDSCWnd
Ein Zeiger auf das CWnd-abgeleitete Objekt, das das Datenquellensteuerelement hostt, an das die Eigenschaft gebunden wird.

Hinweise

Das CWnd Objekt, für das Sie diese Funktion aufrufen, muss ein datengebundenes Steuerelement sein.

COleControlSite::BindProperty

Bindet die einfache gebundene Eigenschaft des aufrufenden Objekts, wie in der Typbibliothek markiert, an den zugrunde liegenden Cursor, der von den Eigenschaften DataSource, UserName, Password und SQL des Datenquellensteuerelements definiert wird.

virtual void BindProperty(
    DISPID dwDispId,
    CWnd* pWndDSC);

Parameter

dwDispId
Gibt die DISPID einer Eigenschaft für ein datengebundenes Steuerelement an, das an ein Datenquellensteuerelement gebunden werden soll.

pWndDSC
Ein Zeiger auf das CWnd-abgeleitete Objekt, das das Datenquellensteuerelement hostt, an das die Eigenschaft gebunden wird.

Hinweise

Das CWnd Objekt, für das Sie diese Funktion aufrufen, muss ein datengebundenes Steuerelement sein.

COleControlSite::COleControlSite

Erstellt ein neues COleControlSite-Objekt.

explicit COleControlSite(COleControlContainer* pCtrlCont);

Parameter

pCtrlCont
Ein Zeiger auf den Container des Steuerelements (das das Fenster darstellt, das das AtiveX-Steuerelement hostet).

Hinweise

Diese Funktion wird von der COccManager::CreateContainer-Funktion aufgerufen. Weitere Informationen zum Anpassen der Erstellung von Containern finden Sie unter COccManager::CreateSite.

COleControlSite::CreateControl

Erstellt ein ActiveX-Steuerelement, das vom COleControlSite Objekt gehostet wird.

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const RECT& rect,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const POINT* ppt,
    const SIZE* psize,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

Parameter

pWndCtrl
Ein Zeiger auf das Fensterobjekt, das das Steuerelement darstellt.

Clsid
Die eindeutige Klassen-ID des Steuerelements.

lpszWindowName
Ein Zeiger auf den Text, der im Steuerelement angezeigt werden soll. Legt den Wert der Eigenschaft "Caption" oder "Text" (sofern vorhanden) fest.

dwStyle
Windows-Formatvorlagen. Die verfügbaren Formatvorlagen werden im Abschnitt "Hinweise " aufgeführt.

Rect
Gibt die Größe und Position des Steuerelements an. Dabei kann es sich um ein CRect Objekt oder eine RECT Struktur handeln.

Nid
Gibt die untergeordnete Fenster-ID des Steuerelements an.

pPersist
Ein Zeiger auf einen CFile , der den permanenten Zustand für das Steuerelement enthält. Der Standardwert ist NULL, der angibt, dass das Steuerelement sich selbst initialisiert, ohne den Zustand aus einem dauerhaften Speicher wiederherzustellen. Wenn nicht NULL, sollte es sich um einen Zeiger auf ein CFileabgeleitetes Objekt handeln, das die persistenten Daten des Steuerelements enthält, in Form eines Datenstroms oder eines Speichers. Diese Daten konnten in einer vorherigen Aktivierung des Clients gespeichert werden. Dies CFile kann andere Daten enthalten, muss jedoch den Lese-/Schreibzeiger auf das erste Byte persistenter Daten zum Zeitpunkt des Aufrufs CreateControlfestgelegt haben.

bStorage
Gibt an, ob die Daten in pPersist als IStorage oder IStream Daten interpretiert werden sollen. Wenn die Daten in pPersist ein Speicher sind, sollte bStorage TRUE sein. Wenn es sich bei den Daten in pPersist um einen Datenstrom handelt, sollte bStorage FALSE sein. Der Standardwert ist FALSE.

bstrLicKey
Optionale Lizenzschlüsseldaten. Diese Daten werden nur zum Erstellen von Steuerelementen benötigt, für die ein Laufzeitlizenzschlüssel erforderlich ist. Wenn das Steuerelement die Lizenzierung unterstützt, müssen Sie einen Lizenzschlüssel angeben, damit das Steuerelement erfolgreich erstellt werden kann. Der Standardwert ist NULL.

Ppt
Ein Zeiger auf eine POINT Struktur, die die obere linke Ecke des Steuerelements enthält. Die Größe des Steuerelements wird durch den Wert " psize" bestimmt. Die Ppt - und psize-Werte sind eine optionale Methode zum Angeben der Größe und Position des Steuerelements.

psize
Ein Zeiger auf eine SIZE Struktur, die die Größe des Steuerelements enthält. Die obere linke Ecke wird durch den Wert von ppt bestimmt. Die Ppt - und psize-Werte sind eine optionale Methode zum Angeben der Größe und Position des Steuerelements.

Rückgabewert

Ein HRESULT-Standardwert.

Hinweise

Es werden nur eine Teilmenge der Windows dwStyle-Flags unterstützt:CreateControl

  • WS_VISIBLE Erstellt ein anfangs sichtbares Fenster. Erforderlich, wenn das Steuerelement sofort sichtbar sein soll, z. B. normale Fenster.

  • WS_DISABLED Erstellt ein anfangs deaktiviertes Fenster. Ein deaktiviertes Fenster kann keine Eingaben vom Benutzer empfangen. Kann festgelegt werden, wenn das Steuerelement über eine Enabled-Eigenschaft verfügt.

  • WS_BORDER Erstellt ein Fenster mit einem dünnen Rahmen. Kann festgelegt werden, wenn das Steuerelement über eine BorderStyle-Eigenschaft verfügt.

  • WS_GROUP Gibt das erste Steuerelement einer Gruppe von Steuerelementen an. Der Benutzer kann den Tastaturfokus mithilfe der Richtungstasten von einem Steuerelement in der Gruppe zum nächsten ändern. Alle Steuerelemente, die nach dem ersten Steuerelement mit der WS_GROUP Formatvorlage definiert sind, gehören derselben Gruppe an. Das nächste Steuerelement mit der WS_GROUP Formatvorlage beendet die Gruppe und startet die nächste Gruppe.

  • WS_TABSTOP Gibt ein Steuerelement an, das den Tastaturfokus erhalten kann, wenn der Benutzer die TAB-TASTE drückt. Durch Drücken der TAB-TASTE wird der Tastaturfokus auf das nächste Steuerelement der WS_TABSTOP Formatvorlage geändert.

Verwenden Sie die zweite Überladung, um Standardsteuerelemente zu erstellen.

COleControlSite::D estroyControl

Zerstört das COleControlSite-Objekt.

virtual BOOL DestroyControl();

Rückgabewert

Wenn dies erfolgreich ist, andernfalls 0.

Hinweise

Nach Abschluss des Vorgangs wird das Objekt aus dem Arbeitsspeicher freigegeben, und alle Zeiger auf das Objekt sind nicht mehr gültig.

COleControlSite::D oVerb

Führt das angegebene Verb aus.

virtual HRESULT DoVerb(
    LONG nVerb,
    LPMSG lpMsg = NULL);

Parameter

nVerb
Gibt das auszuführende Verb an. Sie kann eine der folgenden Elemente enthalten:

Wert Bedeutung Symbol
0 Primäres Verb OLEIVERB_PRIMARY
-1 Sekundäres Verb (Keine)
1 Zeigt das Objekt zum Bearbeiten an. OLEIVERB_SHOW
-2 Bearbeitet das Element in einem separaten Fenster. OLEIVERB_OPEN
-3 Blendet das Objekt aus. OLEIVERB_HIDE
-4 Aktiviert ein Steuerelement an einem ortsinternen Steuerelement. OLEIVERB_UIACTIVATE
-5 Aktiviert ein Steuerelement direkt ohne zusätzliche Benutzeroberflächenelemente. OLEIVERB_INPLACEACTIVATE
-7 Zeigen Sie die Eigenschaften des Steuerelements an. OLEIVERB_PROPERTIES

lpMsg
Zeigen Sie auf die Nachricht, die dazu führte, dass das Element aktiviert wurde.

Rückgabewert

Ein HRESULT-Standardwert.

Hinweise

Diese Funktion ruft direkt über die Schnittstelle des Steuerelements IOleObject auf, um das angegebene Verb auszuführen. Wenn eine Ausnahme aufgrund dieses Funktionsaufrufs ausgelöst wird, wird ein HRESULT-Fehlercode zurückgegeben.

Weitere Informationen finden Sie unter "IOleObject::D oVerb " im Windows SDK.

COleControlSite::EnableDSC

Ermöglicht die Datenbeschaffung für die Kontrollwebsite.

virtual void EnableDSC();

Hinweise

Vom Framework aufgerufen, um die Datenbeschaffung für die Kontrollwebsite zu aktivieren und zu initialisieren. Überschreiben Sie diese Funktion, um ein angepasstes Verhalten bereitzustellen.

COleControlSite::EnableWindow

Aktiviert oder deaktiviert Maus- und Tastatureingaben an der Steuerungswebsite.

virtual BOOL EnableWindow(BOOL bEnable);

Parameter

bEnable
Gibt an, ob das Fenster aktiviert oder deaktiviert werden soll: TRUE, wenn die Fenstereingabe aktiviert werden soll, andernfalls FALSE.

Rückgabewert

Nonzero, wenn das Fenster zuvor deaktiviert wurde, andernfalls 0.

COleControlSite::FreezeEvents

Gibt an, ob die Steuerelementwebsite Ereignisse behandelt oder ignoriert, die von einem Steuerelement ausgelöst werden.

void FreezeEvents(BOOL bFreeze);

Parameter

bFreeze
Gibt an, ob die Steuerelementsite das Akzeptieren von Ereignissen beenden möchte. Nonzero, wenn das Steuerelement keine Ereignisse akzeptiert; andernfalls 0.

Hinweise

Wenn bFreeze TRUE ist, fordert die Steuerelementwebsite das Steuerelement an, das Auslösen von Ereignissen zu beenden. Wenn bFreeze FALSE ist, fordert die Steuerelementwebsite das Steuerelement auf, das Auslösen von Ereignissen fortzusetzen.

Hinweis

Das Steuerelement ist nicht erforderlich, um das Auslösen von Ereignissen zu beenden, wenn dies von der Steuerelementwebsite angefordert wird. Das Auslösen kann fortgesetzt werden, aber alle nachfolgenden Ereignisse werden von der Steuerelementwebsite ignoriert.

COleControlSite::GetControlInfo

Ruft Informationen zum Mnemonics- und Tastaturverhalten eines Steuerelements ab.

void GetControlInfo();

Hinweise

Die Informationen werden in COleControlSite::m_ctlInfo gespeichert.

COleControlSite::GetDefBtnCode

Bestimmt, ob es sich bei dem Steuerelement um eine Standardtaste handelt.

DWORD GetDefBtnCode();

Rückgabewert

Folgenden Werte sind möglich:

  • DLGC_DEFPUSHBUTTON Steuerelement ist die Standardschaltfläche im Dialogfeld.

  • DLGC_UNDEFPUSHBUTTON Steuerelement ist nicht die Standardschaltfläche im Dialogfeld.

  • 0 Steuerelement ist keine Schaltfläche.

COleControlSite::GetDlgCtrlID

Ruft den Bezeichner des Steuerelements ab.

virtual int GetDlgCtrlID() const;

Rückgabewert

Der Dialogfeldelementbezeichner des Steuerelements.

COleControlSite::GetEventIID

Ruft einen Zeiger auf die Standardereignisschnittstelle des Steuerelements ab.

BOOL GetEventIID(IID* piid);

Parameter

piid
Ein Zeiger auf eine Schnittstellen-ID.

Rückgabewert

Wenn dies erfolgreich ist, andernfalls 0. Bei erfolgreicher Ausführung enthält piid die Schnittstellen-ID für die Standardereignisschnittstelle des Steuerelements.

COleControlSite::GetExStyle

Ruft die erweiterten Formatvorlagen des Fensters ab.

virtual DWORD GetExStyle() const;

Rückgabewert

Die erweiterten Formatvorlagen des Steuerelementfensters.

Hinweise

Rufen Sie zum Abrufen der regulären Formatvorlagen COleControlSite::GetStyle auf.

COleControlSite::GetProperty

Ruft die durch dwDispID angegebene Steuerelementeigenschaft ab.

virtual void GetProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    void* pvProp) const;

Parameter

dwDispID
Gibt die Verteiler-ID der Eigenschaft an, die auf der Standardschnittstelle IDispatch des Steuerelements gefunden wird, die abgerufen werden soll.

vtProp
Gibt den Typ der abzurufenden Eigenschaft an. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

pvProp
Adresse der Variablen, die den Eigenschaftswert erhält. Er muss mit dem durch vtProp angegebenen Typ übereinstimmen.

Hinweise

Der Wert wird über pvProp zurückgegeben.

COleControlSite::GetStyle

Ruft die Stile der Steuerelementwebsite ab.

virtual DWORD GetStyle() const;

Rückgabewert

Die Formatvorlagen des Fensters.

Hinweise

Eine Liste der möglichen Werte finden Sie unter Windows Styles. Rufen Sie COleControlSite::GetExStyle auf, um die erweiterten Stile der Steuerelementwebsite abzurufen.

COleControlSite::GetWindowText

Ruft den aktuellen Text des Steuerelements ab.

virtual void GetWindowText(CString& str) const;

Parameter

str
Ein Verweis auf ein CString Objekt, das den aktuellen Text des Steuerelements enthält.

Hinweise

Wenn das Steuerelement die Caption-Aktieneigenschaft unterstützt, wird dieser Wert zurückgegeben. Wenn die Caption-Aktieneigenschaft nicht unterstützt wird, wird der Wert für die Text-Eigenschaft zurückgegeben.

COleControlSite::InvokeHelper

Ruft die von dwDispID angegebene Methode oder Eigenschaft im durch wFlags angegebenen Kontext auf.

virtual void AFX_CDECL InvokeHelper(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo, ...);

Parameter

dwDispID
Gibt die Verteiler-ID der Eigenschaft oder Methode an, die auf der Schnittstelle des Steuerelements IDispatch gefunden wird, die aufgerufen werden soll.

wFlags
Flags, die den Kontext des Aufrufs von IDispatch::Invokebeschreiben. Mögliche wFlags-Werte finden Sie IDispatch::Invoke im Windows SDK.

vtRet
Gibt den Typ des Rückgabewerts an. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

pvRet
Die Adresse der Variablen, die den Eigenschaftswert oder Rückgabewert aufnimmt. Er muss mit dem von vtRet angegebenen Typ übereinstimmen.

pbParamInfo
Zeigen Sie auf eine mit Null beendete Zeichenfolge mit Bytes, die die Typen der Parameter nach pbParamInfo angibt. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

...
Variable Liste der Parameter, von Typen, die in pbParamInfo angegeben sind.

Hinweise

Der PbParamInfo-Parameter gibt die Typen der Parameter an, die an die Methode oder Eigenschaft übergeben werden. Die variable Argumentliste wird in der Syntaxdeklaration durch ... dargestellt.

Diese Funktion konvertiert die Parameter in VARIANTARG-Werte und ruft dann die IDispatch::Invoke Methode für das Steuerelement auf. Bei einem Fehler des Aufrufs von IDispatch::Invoke löst diese Funktion eine Ausnahme aus. Wenn der von IDispatch::Invoke diesem zurückgegebene Statuscode zurückgegeben wird DISP_E_EXCEPTION, löst diese Funktion ein COleDispatchException Objekt aus, andernfalls wird ein COleException.

COleControlSite::InvokeHelperV

Ruft die von dwDispID angegebene Methode oder Eigenschaft im durch wFlags angegebenen Kontext auf.

virtual void InvokeHelperV(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo,
    va_list argList);

Parameter

dwDispID
Gibt die Verteiler-ID der Eigenschaft oder Methode an, die auf der Schnittstelle des Steuerelements IDispatch gefunden wird, die aufgerufen werden soll.

wFlags
Flags, die den Kontext des Aufrufs von IDispatch::Invokebeschreiben.

vtRet
Gibt den Typ des Rückgabewerts an. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

pvRet
Die Adresse der Variablen, die den Eigenschaftswert oder Rückgabewert aufnimmt. Er muss mit dem von vtRet angegebenen Typ übereinstimmen.

pbParamInfo
Zeigen Sie auf eine mit Null beendete Zeichenfolge mit Bytes, die die Typen der Parameter nach pbParamInfo angibt. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

Arglist
Zeiger auf eine variable Argumentliste.

Hinweise

Der PbParamInfo-Parameter gibt die Typen der Parameter an, die an die Methode oder Eigenschaft übergeben werden. Zusätzliche Parameter für die aufgerufene Methode oder Eigenschaft können mithilfe des va_list-Parameters übergeben werden.

In der Regel wird diese Funktion von COleControlSite::InvokeHelper.

COleControlSite::IsDefaultButton

Bestimmt, ob das Steuerelement die Standardschaltfläche ist.

BOOL IsDefaultButton();

Rückgabewert

Nonzero, wenn das Steuerelement die Standardschaltfläche im Fenster ist, andernfalls Null.

COleControlSite::IsWindowEnabled

Bestimmt, ob die Steuerelementwebsite aktiviert ist.

virtual BOOL IsWindowEnabled() const;

Rückgabewert

Nonzero, wenn das Steuerelement aktiviert ist, andernfalls 0.

Hinweise

Der Wert wird aus der Enabled-Aktieneigenschaft des Steuerelements abgerufen.

COleControlSite::m_bIsWindowless

Bestimmt, ob das Objekt ein fensterloses Steuerelement ist.

BOOL m_bIsWindowless;

Hinweise

Nonzero, wenn das Steuerelement kein Fenster aufweist, andernfalls Null.

COleControlSite::m_ctlInfo

Informationen dazu, wie die Tastatureingabe vom Steuerelement behandelt wird.

CONTROLINFO m_ctlInfo;

Hinweise

Diese Informationen werden in einer CONTROLINFO-Struktur gespeichert.

COleControlSite::m_dwEventSink

Enthält das Cookie des Verbindungspunkts aus der Ereignissenke des Steuerelements.

DWORD m_dwEventSink;

COleControlSite::m_dwMiscStatus

Enthält verschiedene Informationen zum Steuerelement.

DWORD m_dwMiscStatus;

Hinweise

Weitere Informationen finden Sie unter OLEMISCim Windows SDK.

COleControlSite::m_dwPropNotifySink

Enthält das IPropertyNotifySink-Cookie .

DWORD m_dwPropNotifySink;

COleControlSite::m_dwStyle

Enthält die Fensterformatvorlagen des Steuerelements.

DWORD m_dwStyle;

COleControlSite::m_hWnd

Enthält den HWND des Steuerelements oder NULL, wenn das Steuerelement fensterlos ist.

HWND m_hWnd;

COleControlSite::m_iidEvents

Enthält die Schnittstellen-ID der Standardereignis-Sink-Schnittstelle des Steuerelements.

IID m_iidEvents;

COleControlSite::m_nID

Enthält die Dialogfeldelement-ID des Steuerelements.

UINT m_nID;

COleControlSite::m_pActiveObject

Enthält die IOleInPlaceActiveObject-Schnittstelle des Steuerelements.

LPOLEINPLACEACTIVEOBJECT m_pActiveObject;

COleControlSite::m_pCtrlCont

Enthält den Container des Steuerelements (das Formular darstellt).

COleControlContainer* m_pCtrlCont;

COleControlSite::m_pInPlaceObject

Enthält die IOleInPlaceObjectIOleInPlaceObject-Schnittstelle des Steuerelements.

LPOLEINPLACEOBJECT m_pInPlaceObject;

COleControlSite::m_pObject

Enthält die IOleObjectInterface Schnittstelle des Steuerelements.

LPOLEOBJECT m_pObject;

COleControlSite::m_pWindowlessObject

Enthält die IOleInPlaceObjectWindowlessIOleInPlaceObjectWindowless-Schnittstelle des Steuerelements.

IOleInPlaceObjectWindowless* m_pWindowlessObject;

COleControlSite::m_pWndCtrl

Enthält einen Zeiger auf das CWnd Objekt, das das Steuerelement selbst darstellt.

CWnd* m_pWndCtrl;

COleControlSite::m_rect

Enthält die Grenzen des Steuerelements relativ zum Containerfenster.

CRect m_rect;

COleControlSite::ModifyStyle

Ändert die Formatvorlagen des Steuerelements.

virtual BOOL ModifyStyle(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

Parameter

dwRemove
Die Formatvorlagen, die aus den aktuellen Fensterformatvorlagen entfernt werden sollen.

dwAdd
Die Formatvorlagen, die aus den aktuellen Fensterformatvorlagen hinzugefügt werden sollen.

nFlags
Fensterpositionierungskennzeichnungen. Eine Liste der möglichen Werte finden Sie in der SetWindowPos-Funktion im Windows SDK.

Rückgabewert

Nonzero, wenn die Formatvorlagen geändert werden, andernfalls 0.

Hinweise

Die Aktieneigenschaft "Enabled" des Steuerelements wird entsprechend der Einstellung für WS_DISABLED geändert. Die Stock Border Style-Eigenschaft des Steuerelements wird entsprechend der angeforderten Einstellung für WS_BORDER geändert. Alle anderen Formatvorlagen werden direkt auf den Fensterziehpunkt des Steuerelements angewendet, falls vorhanden.

Ändert die Fensterformatvorlagen des Steuerelements. Formatvorlagen, die hinzugefügt oder entfernt werden sollen, können mithilfe des bitweisen OR(|)-Operators kombiniert werden. Informationen zu den verfügbaren Fensterformatvorlagen finden Sie in der CreateWindow-Funktion im Windows SDK.

Wenn nFlags nicht null ist, ModifyStyle ruft die Win32-Funktion SetWindowPosauf und zeichnet das Fenster neu, indem nFlags mit den folgenden vier Flags kombiniert wird:

  • SWP_NOSIZE behält die aktuelle Größe bei.

  • SWP_NOMOVE behält die aktuelle Position bei.

  • SWP_NOZORDER behält die aktuelle Z-Reihenfolge bei.

  • SWP_NOACTIVATE Aktiviert das Fenster nicht.

Rufen Sie ModifyStyleEx auf, um die erweiterten Formatvorlagen eines Fensters zu ändern.

COleControlSite::ModifyStyleEx

Ändert die erweiterten Formatvorlagen des Steuerelements.

virtual BOOL ModifyStyleEx(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

Parameter

dwRemove
Die erweiterten Formatvorlagen, die aus den aktuellen Fensterformatvorlagen entfernt werden sollen.

dwAdd
Die erweiterten Formatvorlagen, die aus den aktuellen Fensterformatvorlagen hinzugefügt werden sollen.

nFlags
Fensterpositionierungskennzeichnungen. Eine Liste der möglichen Werte finden Sie in der SetWindowPos-Funktion im Windows SDK.

Rückgabewert

Nonzero, wenn die Formatvorlagen geändert werden, andernfalls 0.

Hinweise

Die Eigenschaft "Aktiendarstellung" des Steuerelements wird entsprechend der Einstellung für WS_EX_CLIENTEDGE geändert. Alle anderen erweiterten Fensterformatvorlagen werden direkt auf den Fensterpunkt des Steuerelements angewendet, sofern vorhanden.

Ändert die erweiterten Fensterformatvorlagen des Steuerelementwebsiteobjekts. Formatvorlagen, die hinzugefügt oder entfernt werden sollen, können mithilfe des bitweisen OR(|)-Operators kombiniert werden. Informationen zu den verfügbaren Fensterformatvorlagen finden Sie in der CreateWindowEx-Funktion im Windows SDK.

Wenn nFlags nicht null ist, ModifyStyleEx ruft die Win32-Funktion SetWindowPosauf und zeichnet das Fenster neu, indem nFlags mit den folgenden vier Flags kombiniert wird:

  • SWP_NOSIZE behält die aktuelle Größe bei.

  • SWP_NOMOVE behält die aktuelle Position bei.

  • SWP_NOZORDER behält die aktuelle Z-Reihenfolge bei.

  • SWP_NOACTIVATE Aktiviert das Fenster nicht.

Rufen Sie ModifyStyle auf, um die erweiterten Formatvorlagen eines Fensters zu ändern.

COleControlSite::MoveWindow

Ändert die Position des Steuerelements.

virtual void MoveWindow(
    int x,
    int y,
    int nWidth,
    int nHeight);

Parameter

x
Die neue Position der linken Seite des Fensters.

y
Die neue Position des oberen Fensterrands.

nWidth
Die neue Breite des Fensters

nHeight
Die neue Höhe des Fensters.

COleControlSite::QuickActivate

Schnellaktiviert das enthaltene Steuerelement.

virtual BOOL QuickActivate();

Rückgabewert

Nonzero, wenn die Steuerelementwebsite aktiviert wurde, andernfalls 0.

Hinweise

Diese Funktion sollte nur aufgerufen werden, wenn der Benutzer den Erstellungsprozess des Steuerelements überschreibt.

Die IPersist*::Load Methoden und IPersist*::InitNew Methoden sollten aufgerufen werden, nachdem die schnelle Aktivierung erfolgt. Das Steuerelement sollte während der schnellen Aktivierung seine Verbindungen mit den Senken des Containers herstellen. Diese Verbindungen sind jedoch erst live, wenn IPersist*::Load sie IPersist*::InitNew aufgerufen wurden.

COleControlSite::Tresor SetProperty

Legt die durch dwDispID angegebene Steuerelementeigenschaft fest.

virtual BOOL AFX_CDECL SafeSetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

Parameter

dwDispID
Gibt die Verteiler-ID der Eigenschaft oder Methode an, die auf der Schnittstelle des Steuerelements IDispatch gefunden wird, die festgelegt werden soll.

vtProp
Gibt den festzulegenden Eigenschaftstyp an. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

...
Ein einzelner Parameter des typs, der von vtProp angegeben wird.

Rückgabewert

Ungleich 0, wenn erfolgreich, andernfalls 0.

Hinweise

Hinweis

Im Gegensatz und SetPropertySetPropertyV, wenn ein Fehler aufgetreten ist (z. B. versuchen, eine nicht vorhandene Eigenschaft festzulegen), wird keine Ausnahme ausgelöst.

COleControlSite::SetDefaultButton

Legt das Steuerelement als Standardschaltfläche fest.

void SetDefaultButton(BOOL bDefault);

Parameter

bDefault
Nonzero, wenn das Steuerelement zur Standardschaltfläche werden soll; andernfalls 0.

Hinweise

Hinweis

Das Steuerelement muss über den OLEMISC_ACTSLIKEBUTTON Statusbitsatz verfügen.

COleControlSite::SetDlgCtrlID

Ändert den Wert des Dialogfeldelementbezeichners des Steuerelements.

virtual int SetDlgCtrlID(int nID);

Parameter

Nid
Der neue Bezeichnerwert.

Rückgabewert

Bei erfolgreicher Ausführung wird der vorherige Dialogfeldelementbezeichner des Fensters angezeigt. andernfalls 0.

Hinweise

COleControlSite::SetFocus

Legt den Fokus auf das Steuerelement fest.

virtual CWnd* SetFocus();
virtual CWnd* SetFocus(LPMSG lpmsg);

Parameter

lpmsg
Ein Zeiger auf eine MSG-Struktur. Diese Struktur enthält die Windows-Nachricht, die die SetFocus Anforderung für das Steuerelement auslöst, das in der aktuellen Steuerelementwebsite enthalten ist.

Rückgabewert

Ein Zeiger auf das Fenster, das zuvor den Fokus hatte.

COleControlSite::SetProperty

Legt die durch dwDispID angegebene Steuerelementeigenschaft fest.

virtual void AFX_CDECL SetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

Parameter

dwDispID
Gibt die Verteiler-ID der Eigenschaft oder Methode an, die auf der Schnittstelle des Steuerelements IDispatch gefunden wird, die festgelegt werden soll.

vtProp
Gibt den festzulegenden Eigenschaftstyp an. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

...
Ein einzelner Parameter des typs, der von vtProp angegeben wird.

Hinweise

Wenn SetProperty ein Fehler auftritt, wird eine Ausnahme ausgelöst.

Der Ausnahmetyp wird durch den Rückgabewert des Versuchs, die Eigenschaft oder Methode festzulegen, bestimmt. Wenn der Rückgabewert lautet DISP_E_EXCEPTION, wird eine COleDispatchExcpetion ausgelöst; andernfalls ein COleException.

COleControlSite::SetPropertyV

Legt die durch dwDispID angegebene Steuerelementeigenschaft fest.

virtual void SetPropertyV(
    DISPID dwDispID,
    VARTYPE vtProp,
    va_list argList);

Parameter

dwDispID
Gibt die Verteiler-ID der Eigenschaft oder Methode an, die auf der Schnittstelle des Steuerelements IDispatch gefunden wird, die festgelegt werden soll.

vtProp
Gibt den festzulegenden Eigenschaftstyp an. Informationen zu den möglichen Werten finden Sie im Abschnitt „Anmerkungen“ für COleDispatchDriver::InvokeHelper.

Arglist
Zeiger auf die Liste der Argumente.

Hinweise

Zusätzliche Parameter für die aufgerufene Methode oder Eigenschaft können mithilfe des arg_list-Parameters übergeben werden. Wenn SetProperty ein Fehler auftritt, wird eine Ausnahme ausgelöst.

Der Ausnahmetyp wird durch den Rückgabewert des Versuchs, die Eigenschaft oder Methode festzulegen, bestimmt. Wenn der Rückgabewert lautet DISP_E_EXCEPTION, wird eine COleDispatchExcpetion ausgelöst; andernfalls ein COleException.

COleControlSite::SetWindowPos

Legt die Größe, Position und Z-Reihenfolge der Steuerelementwebsite fest.

virtual BOOL SetWindowPos(
    const CWnd* pWndInsertAfter,
    int x,
    int y,
    int cx,
    int cy,
    UINT nFlags);

Parameter

pWndInsertAfter
Ein Zeiger auf das Fenster.

x
Die neue Position der linken Seite des Fensters.

y
Die neue Position des oberen Fensterrands.

Cx
Die neue Breite des Fensters

Cy
Die neue Höhe des Fensters.

nFlags
Gibt die Fenstergröße und Positionierungskennzeichnungen an. Mögliche Werte finden Sie im Abschnitt "Hinweise" für SetWindowPos im Windows SDK.

Rückgabewert

Wenn dies erfolgreich ist, andernfalls 0.

COleControlSite::SetWindowText

Legt den Text für die Steuerelementwebsite fest.

virtual void SetWindowText(LPCTSTR lpszString);

Parameter

lpszString
Zeiger auf eine mit Null beendete Zeichenfolge, die als neuer Titel oder Steuerelementtext verwendet werden soll.

Hinweise

Diese Funktion versucht zunächst, die Caption-Aktieneigenschaft festzulegen. Wenn die Caption-Aktieneigenschaft nicht unterstützt wird, wird stattdessen die Text-Eigenschaft festgelegt.

COleControlSite::ShowWindow

Legt den Anzeigezustand des Fensters fest.

virtual BOOL ShowWindow(int nCmdShow);

Parameter

nCmdShow
Gibt an, wie die Steuerelementwebsite angezeigt werden soll. Es muss sich um einen der folgenden Werte handeln:

  • SW_HIDE Blendet dieses Fenster aus und übergibt die Aktivierung an ein anderes Fenster.

  • SW_MINIMIZE Minimiert das Fenster und aktiviert das Fenster auf oberster Ebene in der Liste des Systems.

  • SW_RESTORE Aktiviert und zeigt das Fenster an. Wenn das Fenster minimiert oder maximiert ist, stellt Windows es in seiner ursprünglichen Größe und Position wieder her.

  • SW_SHOW Aktiviert das Fenster und zeigt es in seiner aktuellen Größe und Position an.

  • SW_SHOWMAXIMIZED Aktiviert das Fenster und zeigt es als maximiertes Fenster an.

  • SW_SHOWMINIMIZED Aktiviert das Fenster und zeigt es als Symbol an.

  • SW_SHOWMINNOACTIVE Zeigt das Fenster als Symbol an. Das fenster, das derzeit aktiv ist Standard s aktiv.

  • SW_SHOWNA Zeigt das Fenster im aktuellen Zustand an. Das fenster, das derzeit aktiv ist Standard s aktiv.

  • SW_SHOWNOACTIVATE Zeigt das Fenster in seiner aktuellen Größe und Position an. Das fenster, das derzeit aktiv ist Standard s aktiv.

  • SW_SHOWNORMAL Aktiviert und zeigt das Fenster an. Wenn das Fenster minimiert oder maximiert ist, stellt Windows es in seiner ursprünglichen Größe und Position wieder her.

Rückgabewert

Nonzero, wenn das Fenster zuvor sichtbar war; 0, wenn das Fenster zuvor ausgeblendet wurde.

Siehe auch

CCmdTarget-Klasse
Hierarchiediagramm
COleControlContainer-Klasse