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.