Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
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.