IOleInPlaceObjectWindowlessImpl – třída
Tato třída implementuje IUnknown
a poskytuje metody, které umožňují ovládacímu prvku bez oken přijímat zprávy okna a účastnit se operací přetažení.
Důležité
Tuto třídu a její členy nelze použít v aplikacích, které se spouští v prostředí Windows Runtime.
Syntaxe
template<class T>
class IOleInPlaceObjectWindowlessImpl
Parametry
T
Vaše třída odvozená z IOleInPlaceObjectWindowlessImpl
.
Členové
Veřejné metody
Název | Popis |
---|---|
IOleInPlaceObjectWindowlessImpl::ContextSensitiveHelp | Povolí nápovědu citlivou na kontext. Implementace ATL vrátí E_NOTIMPL. |
IOleInPlaceObjectWindowlessImpl::GetDropTarget | IDropTarget Poskytuje rozhraní pro místní aktivní objekt bez oken, který podporuje přetažení. Implementace ATL vrátí E_NOTIMPL. |
IOleInPlaceObjectWindowlessImpl::GetWindow | Získá úchyt okna. |
IOleInPlaceObjectWindowlessImpl::InPlaceDeactivate | Deaktivuje aktivní místní ovládací prvek. |
IOleInPlaceObjectWindowlessImpl::OnWindowMessage | Odešle zprávu z kontejneru do ovládacího prvku bez oken, který je na místě aktivní. |
IOleInPlaceObjectWindowlessImpl::ReactivateAndUndo | Znovu aktivuje dříve deaktivovaný ovládací prvek. Implementace ATL vrátí E_NOTIMPL. |
IOleInPlaceObjectWindowlessImpl::SetObjectRects | Určuje, jaká část místního ovládacího prvku je viditelná. |
IOleInPlaceObjectWindowlessImpl::UIDeactivate | Deaktivuje a odebere uživatelské rozhraní, které podporuje místní aktivaci. |
Poznámky
Rozhraní IOleInPlaceObject spravuje opětovnou aktivaci a deaktivaci místních ovládacích prvků a určuje, jaká část ovládacího prvku by měla být viditelná. IOleInPlaceObjectWindowless rozhraní umožňuje ovládací prvek bez oken přijímat zprávy okna a účastnit se operací přetažení. Třída IOleInPlaceObjectWindowlessImpl
poskytuje výchozí implementaci IOleInPlaceObject
a IOleInPlaceObjectWindowless
implementuje IUnknown
odesláním informací do zařízení s výpisem paměti v buildech ladění.
Související články ATL – kurz, vytvoření projektu ATL
Hierarchie dědičnosti
IOleInPlaceObjectWindowless
IOleInPlaceObjectWindowlessImpl
Požadavky
Hlavička: atlctl.h
IOleInPlaceObjectWindowlessImpl::ContextSensitiveHelp
Vrátí E_NOTIMPL.
HRESULT ContextSensitiveHelp(BOOL fEnterMode);
Poznámky
Viz IOleWindow::ContextSensitiveHelp v sadě Windows SDK.
IOleInPlaceObjectWindowlessImpl::GetDropTarget
Vrátí E_NOTIMPL.
HRESULT GetDropTarget(IDropTarget** ppDropTarget);
Poznámky
Viz IOleInPlaceObjectWindowless::GetDropTarget v sadě Windows SDK.
IOleInPlaceObjectWindowlessImpl::GetWindow
Kontejner volá tuto funkci, aby získal popisovač okna ovládacího prvku.
HRESULT GetWindow(HWND* phwnd);
Poznámky
Některé kontejnery nebudou fungovat s ovládacím prvku bez oken, i když je aktuálně v okně. Pokud je datový člen m_bWasOnceWindowless
třídy ovládacího prvku v implementaci ATL true, vrátí funkce E_FAIL. V opačném případě, pokud phwnd není NULL, GetWindow
nastaví * phwnd na datový člen m_hWnd
třídy ovládacího prvku a vrátí S_OK.
Viz IOleWindow::GetWindow v sadě Windows SDK.
IOleInPlaceObjectWindowlessImpl::InPlaceDeactivate
Volá se kontejnerem, který deaktivuje místní aktivní ovládací prvek.
HRESULT InPlaceDeactivate(HWND* phwnd);
Poznámky
Tato metoda provádí úplnou nebo částečnou deaktivaci v závislosti na stavu ovládacího prvku. V případě potřeby se uživatelské rozhraní ovládacího prvku deaktivuje a v případě potřeby se zničí okno ovládacího prvku. Kontejner je upozorněn, že ovládací prvek už není aktivní. Rozhraní IOleInPlaceUIWindow
používané kontejnerem k vyjednávání nabídek a hraničního prostoru se uvolní.
Viz IOleInPlaceObject::InPlaceDeactivate v sadě Windows SDK.
IOleInPlaceObjectWindowlessImpl::OnWindowMessage
Odešle zprávu z kontejneru do ovládacího prvku bez oken, který je na místě aktivní.
HRESULT OnWindowMessage(
UINT msg,
WPARAM WParam,
LPARAM LParam,
LRESULT plResultParam);
Poznámky
Viz IOleInPlaceObjectWindowless::OnWindowMessage v sadě Windows SDK.
IOleInPlaceObjectWindowlessImpl::ReactivateAndUndo
Vrátí E_NOTIMPL.
HRESULT ReactivateAndUndo();
Poznámky
Viz IOleInPlaceObject::ReactivateAndUndo v sadě Windows SDK.
IOleInPlaceObjectWindowlessImpl::SetObjectRects
Zavolá kontejner, který informuje ovládací prvek, že se změnila jeho velikost nebo pozice.
HRESULT SetObjectRects(LPCRECT prcPos, LPCRECT prcClip);
Poznámky
Aktualizuje datový člen ovládacího prvku m_rcPos
a zobrazení ovládacího prvku. Zobrazí se pouze část ovládacího prvku, která protíná oblast klipu. Pokud bylo zobrazení ovládacího prvku dříve oříznuto, ale výřez byl odebrán, lze tuto funkci volat, aby se překreslilo úplné zobrazení ovládacího prvku.
Viz IOleInPlaceObject::SetObjectRects v sadě Windows SDK.
IOleInPlaceObjectWindowlessImpl::UIDeactivate
Deaktivuje a odebere uživatelské rozhraní ovládacího prvku, které podporuje místní aktivaci.
HRESULT UIDeactivate();
Poznámky
Nastaví datový člen m_bUIActive
třídy ovládacího prvku na FALSE. Implementace KNIHOVNY ATL této funkce vždy vrací S_OK.
Viz IOleInPlaceObject::UIDeactivate v sadě Windows SDK.