IOleInPlaceObjectWindowlessImpl-Klasse

Diese Klasse implementiert und stellt Methoden bereit, mit denen ein fensterloses IUnknown Steuerelement Fensternachrichten empfangen und an Drag-and-Drop-Vorgängen teilnehmen kann.

Wichtig

Diese Klasse und ihre Member können nicht in Anwendungen verwendet werden, die in der Windows-Runtime ausgeführt werden.

Syntax

template<class T>
class IOleInPlaceObjectWindowlessImpl

Parameter

T
Ihre Klasse, abgeleitet von IOleInPlaceObjectWindowlessImpl.

Member

Öffentliche Methoden

Name Beschreibung
IOleInPlaceObjectWindowlessImpl::ContextSensitiveHelp Aktiviert kontextbezogene Hilfe. Die ATL-Implementierung gibt E_NOTIMPL zurück.
IOleInPlaceObjectWindowlessImpl::GetDropTarget Stellt die IDropTarget Schnittstelle für ein aktives, fensterloses Objekt an, das Ziehen und Ablegen unterstützt. Die ATL-Implementierung gibt E_NOTIMPL zurück.
IOleInPlaceObjectWindowlessImpl::GetWindow Ruft einen Fensterziehpunkt ab.
IOleInPlaceObjectWindowlessImpl::InPlaceDeactivate Deaktiviert ein aktives In-Situ-Steuerelement.
IOleInPlaceObjectWindowlessImpl::OnWindowMessage Verteilt eine Nachricht vom Container an ein fensterloses Steuerelement, das aktiv ist.
IOleInPlaceObjectWindowlessImpl::ReactivateAndUndo Reaktiviert ein zuvor deaktiviertes Steuerelement. Die ATL-Implementierung gibt E_NOTIMPL zurück.
IOleInPlaceObjectWindowlessImpl::SetObjectRects Gibt an, welcher Teil des direkten Steuerelements sichtbar ist.
IOleInPlaceObjectWindowlessImpl::UIDeactivate Deaktiviert und entfernt die Benutzeroberfläche, die die direkte Aktivierung unterstützt.

Hinweise

Die IOleInPlaceObject-Schnittstelle verwaltet die Reaktivierung und Deaktivierung von direkten Steuerelementen und bestimmt, wie viel des Steuerelements sichtbar sein soll. Die IOleInPlaceObjectWindowless-Schnittstelle ermöglicht es einem fensterlosen Steuerelement, Fenstermeldungen zu empfangen und an Drag-and-Drop-Vorgängen teilzunehmen. Klasse IOleInPlaceObjectWindowlessImpl bietet eine Standardimplementierung von IOleInPlaceObject und IOleInPlaceObjectWindowless implementiert, indem Informationen an das Speicherabbildgerät in Debugbuilds IUnknown gesendet werden.

Verwandte Artikel ATL-Lernprogramm, Erstellen eines ATL-Projekts

Vererbungshierarchie

IOleInPlaceObjectWindowless

IOleInPlaceObjectWindowlessImpl

Anforderungen

Header: atlctl.h

IOleInPlaceObjectWindowlessImpl::ContextSensitiveHelp

Gibt E_NOTIMPL zurück.

HRESULT ContextSensitiveHelp(BOOL fEnterMode);

Hinweise

Siehe IOleWindow::ContextSensitiveHelp im Windows SDK.

IOleInPlaceObjectWindowlessImpl::GetDropTarget

Gibt E_NOTIMPL zurück.

HRESULT GetDropTarget(IDropTarget** ppDropTarget);

Hinweise

Siehe IOleInPlaceObjectWindowless::GetDropTarget im Windows SDK.

IOleInPlaceObjectWindowlessImpl::GetWindow

Der Container ruft diese Funktion auf, um das Fensterhandle des Steuerelements abzurufen.

HRESULT GetWindow(HWND* phwnd);

Hinweise

Einige Container funktionieren nicht mit einem Steuerelement, das fensterlos war, auch wenn es zurzeit fensterlos ist. Wenn das Datenmemmemm m_bWasOnceWindowless der Steuerelementklasse WAHR ist, gibt die Funktion in der Implementierung von ATL E_FAIL zurück. Andernfalls wird , wenn phwnd nicht NULL ist, GetWindow * phwnd auf das Datenelement m_hWnd der Steuerelementklasse festgelegt und S_OK zurückgegeben.

Siehe "IOleWindow::GetWindow " im Windows SDK.

IOleInPlaceObjectWindowlessImpl::InPlaceDeactivate

Wird vom Container aufgerufen, um ein direktes aktives Steuerelement zu deaktivieren.

HRESULT InPlaceDeactivate(HWND* phwnd);

Hinweise

Diese Methode führt abhängig vom Status des Steuerelements eine vollständige oder teilweise Deaktivierung aus. Bei Bedarf wird die Benutzeroberfläche des Steuerelements deaktiviert, und das Fenster des Steuerelements wird ggf. zerstört. Der Container wird benachrichtigt, dass das Steuerelement nicht mehr aktiv ist. Die IOleInPlaceUIWindow Schnittstelle, die vom Container zum Aushandeln von Menüs und Rahmen verwendet wird, wird freigegeben.

Siehe IOleInPlaceObject::InPlaceDeactivate im Windows SDK.

IOleInPlaceObjectWindowlessImpl::OnWindowMessage

Verteilt eine Nachricht von einem Container an ein fensterloses Steuerelement, das aktiv ist.

HRESULT OnWindowMessage(
    UINT msg,
    WPARAM WParam,
    LPARAM LParam,
    LRESULT plResultParam);

Hinweise

Siehe IOleInPlaceObjectWindowless::OnWindowMessage im Windows SDK.

IOleInPlaceObjectWindowlessImpl::ReactivateAndUndo

Gibt E_NOTIMPL zurück.

HRESULT ReactivateAndUndo();

Hinweise

Siehe IOleInPlaceObject::ReactivateAndUndo im Windows SDK.

IOleInPlaceObjectWindowlessImpl::SetObjectRects

Wird vom Container aufgerufen, um das Steuerelement darüber zu informieren, dass sich seine Größe und/oder Position geändert hat.

HRESULT SetObjectRects(LPCRECT prcPos, LPCRECT prcClip);

Hinweise

Aktualisiert das Datenelement des Steuerelements und die Anzeige des Steuerelements m_rcPos . Nur der Teil des Steuerelements, der den Clipbereich überschneidet, wird angezeigt. Wenn die Anzeige eines Steuerelements zuvor abgeschnitten wurde, der Clipping jedoch entfernt wurde, kann diese Funktion aufgerufen werden, um eine vollständige Ansicht des Steuerelements neu zu zeichnen.

Siehe IOleInPlaceObject::SetObjectRects im Windows SDK.

IOleInPlaceObjectWindowlessImpl::UIDeactivate

Deaktiviert und entfernt die Benutzeroberfläche des Steuerelements, die die direkte Aktivierung unterstützt.

HRESULT UIDeactivate();

Hinweise

Legt das Datenelement m_bUIActive der Steuerelementklasse auf FALSE fest. Die ATL-Implementierung dieser Funktion gibt immer S_OK zurück.

Siehe IOleInPlaceObject::UIDeactivate im Windows SDK.

Siehe auch

CComControl-Klasse
Klassenübersicht