Condividi tramite


Classe IOleInPlaceObjectWindowlessImpl

Annotazioni

La libreria di modelli attivi (ATL) continua a essere supportata. Tuttavia, non aggiungiamo più funzionalità né aggiorniamo la documentazione.

Questa classe implementa IUnknown e fornisce metodi che consentono a un controllo senza finestra di ricevere messaggi di finestra e di partecipare a operazioni di trascinamento della selezione.

Importante

Questa classe e i relativi membri non possono essere usati nelle applicazioni eseguite in Windows Runtime.

Sintassi

template<class T>
class IOleInPlaceObjectWindowlessImpl

Parametri

T
Classe derivata da IOleInPlaceObjectWindowlessImpl.

Membri

Metodi pubblici

Nome Descrizione
IOleInPlaceObjectWindowlessImpl::ContextSensitiveHelp Abilita la Guida sensibile al contesto. L'implementazione ATL restituisce E_NOTIMPL.
IOleInPlaceObjectWindowlessImpl::GetDropTarget Fornisce l'interfaccia IDropTarget per un oggetto attivo sul posto che supporta il trascinamento della selezione. L'implementazione ATL restituisce E_NOTIMPL.
IOleInPlaceObjectWindowlessImpl::GetWindow Ottiene un handle di finestra.
IOleInPlaceObjectWindowlessImpl::InPlaceDeactivate Disattiva un controllo sul posto attivo.
IOleInPlaceObjectWindowlessImpl::OnWindowMessage Invia un messaggio dal contenitore a un controllo senza finestra attivo sul posto.
IOleInPlaceObjectWindowlessImpl::ReactivateAndUndo Riattiva un controllo disattivato in precedenza. L'implementazione ATL restituisce E_NOTIMPL.
IOleInPlaceObjectWindowlessImpl::SetObjectRects Indica quale parte del controllo sul posto è visibile.
IOleInPlaceObjectWindowlessImpl::UIDeactivate Disattiva e rimuove l'interfaccia utente che supporta l'attivazione sul posto.

Osservazioni:

L'interfaccia IOleInPlaceObject gestisce la riattivazione e la disattivazione dei controlli sul posto e determina la quantità di controllo che deve essere visibile. L'interfaccia IOleInPlaceObjectWindowless consente a un controllo senza finestra di ricevere messaggi di finestra e di partecipare a operazioni di trascinamento della selezione. La classe IOleInPlaceObjectWindowlessImpl fornisce un'implementazione predefinita di IOleInPlaceObject e IOleInPlaceObjectWindowless implementa inviando informazioni al dispositivo di dump nelle compilazioni IUnknown di debug.

Esercitazione su ATL per articolicorrelati, creazione di un progetto ATL

Gerarchia di ereditarietà

IOleInPlaceObjectWindowless

IOleInPlaceObjectWindowlessImpl

Requisiti

Intestazione: atlctl.h

IOleInPlaceObjectWindowlessImpl::ContextSensitiveHelp

Restituisce E_NOTIMPL.

HRESULT ContextSensitiveHelp(BOOL fEnterMode);

Osservazioni:

Vedere IOleWindow::ContextSensitiveHelp in Windows SDK.

IOleInPlaceObjectWindowlessImpl::GetDropTarget

Restituisce E_NOTIMPL.

HRESULT GetDropTarget(IDropTarget** ppDropTarget);

Osservazioni:

Vedi IOleInPlaceObjectWindowless::GetDropTarget in Windows SDK.

IOleInPlaceObjectWindowlessImpl::GetWindow

Il contenitore chiama questa funzione per ottenere l'handle della finestra del controllo.

HRESULT GetWindow(HWND* phwnd);

Osservazioni:

Alcuni contenitori non funzioneranno con un controllo senza finestra, anche se è attualmente visualizzato. Nell'implementazione di ATL, se il membro m_bWasOnceWindowless dati della classe di controllo è TRUE, la funzione restituisce E_FAIL. In caso contrario, se phwnd non è NULL, GetWindow imposta * phwnd sul membro m_hWnd dati della classe di controllo e restituisce S_OK.

Vedere IOleWindow::GetWindow in Windows SDK.

IOleInPlaceObjectWindowlessImpl::InPlaceDeactivate

Chiamato dal contenitore per disattivare un controllo attivo sul posto.

HRESULT InPlaceDeactivate(HWND* phwnd);

Osservazioni:

Questo metodo esegue una disattivazione completa o parziale a seconda dello stato del controllo. Se necessario, l'interfaccia utente del controllo viene disattivata e la finestra del controllo, se presente, viene eliminata definitivamente. Il contenitore riceve una notifica che indica che il controllo non è più attivo. Viene rilasciata l'interfaccia IOleInPlaceUIWindow utilizzata dal contenitore per negoziare i menu e lo spazio del bordo.

Vedi IOleInPlaceObject::InPlaceDeactivate in Windows SDK.

IOleInPlaceObjectWindowlessImpl::OnWindowMessage

Invia un messaggio da un contenitore a un controllo senza finestra attivo sul posto.

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

Osservazioni:

Vedi IOleInPlaceObjectWindowless::OnWindowMessage in Windows SDK.

IOleInPlaceObjectWindowlessImpl::ReactivateAndUndo

Restituisce E_NOTIMPL.

HRESULT ReactivateAndUndo();

Osservazioni:

Vedi IOleInPlaceObject::ReactivateAndUndo in Windows SDK.

IOleInPlaceObjectWindowlessImpl::SetObjectRects

Chiamato dal contenitore per informare il controllo che le dimensioni e/o la posizione sono state modificate.

HRESULT SetObjectRects(LPCRECT prcPos, LPCRECT prcClip);

Osservazioni:

Aggiorna il membro dati del m_rcPos controllo e la visualizzazione del controllo. Viene visualizzata solo la parte del controllo che interseca l'area di ritaglio. Se la visualizzazione di un controllo è stata ritagliata in precedenza ma il ritaglio è stato rimosso, questa funzione può essere chiamata per ridisegnare una visualizzazione completa del controllo.

Vedere IOleInPlaceObject::SetObjectRects in Windows SDK.

IOleInPlaceObjectWindowlessImpl::UIDeactivate

Disattiva e rimuove l'interfaccia utente del controllo che supporta l'attivazione sul posto.

HRESULT UIDeactivate();

Osservazioni:

Imposta il membro m_bUIActive dati della classe di controllo su FALSE. L'implementazione ATL di questa funzione restituisce sempre S_OK.

Vedi IOleInPlaceObject::UIDeactivate in Windows SDK.

Vedi anche

Classe CComControl
Cenni preliminari sulla classe