Condividi tramite


Classe COleIPFrameWndEx

La classe COleIPFrameWndEx implementa un contenitore OLE che supporta MFC. È necessario derivare la classe della finestra cornice sul posto per l'applicazione dalla classe COleIPFrameWndEx , anziché dalla classe COleIPFrameWnd. Per altri dettagli, vedere il codice sorgente che si trova nella cartella VC\atlmfc\src\mfc dell'installazione di Visual Studio.

Sintassi

class COleIPFrameWndEx : public COleIPFrameWnd

Membri

Metodi pubblici

Nome Descrizione
COleIPFrameWndEx::AddDockSite
COleIPFrameWndEx::AddPane
COleIPFrameWndEx::AdjustDockingLayout
COleIPFrameWndEx::D ockPane
COleIPFrameWndEx::D ockPaneLeftOf Ancora un riquadro a sinistra di un altro riquadro.
COleIPFrameWndEx::EnableAutoHidePanes
COleIPFrameWndEx::EnableDocking
COleIPFrameWndEx::EnablePaneMenu
COleIPFrameWndEx::GetActivePopup Restituisce un puntatore al menu di scelta rapida attualmente visualizzato.
COleIPFrameWndEx::GetContainerFrameWindow
COleIPFrameWndEx::GetDefaultResId Restituisce l'ID risorsa della finestra cornice specificata quando è stata caricata la finestra.
COleIPFrameWndEx::GetDockFrame
COleIPFrameWndEx::GetDockingManager
COleIPFrameWndEx::GetMainFrame
COleIPFrameWndEx::GetMenuBar Restituisce un puntatore all'oggetto della barra dei menu collegato alla finestra cornice.
COleIPFrameWndEx::GetPane
COleIPFrameWndEx::GetTearOffBars Restituisce un elenco di oggetti del riquadro che si trovano in uno stato a comparsa.
COleIPFrameWndEx::GetToolbarButtonToolTipText Chiamato dal framework prima che venga visualizzata la descrizione comando per un pulsante.
COleIPFrameWndEx::InsertPane
COleIPFrameWndEx::IsMenuBarAvailable Determina se il puntatore all'oggetto della barra dei menu non è NULL.
COleIPFrameWndEx::IsPointNearDockSite
COleIPFrameWndEx::LoadFrame Esegue l'override di COleIPFrameWnd::LoadFrame.
COleIPFrameWndEx::OnCloseDockingPane
COleIPFrameWndEx::OnCloseMiniFrame
COleIPFrameWndEx::OnClosePopupMenu Chiamato dal framework quando un menu a comparsa attivo elabora un messaggio WM_DESTROY.
COleIPFrameWndEx::OnCmdMsg Esegue l'override di CFrameWnd::OnCmdMsg.
COleIPFrameWndEx::OnDrawMenuImage Chiamato dal framework quando viene disegnata l'immagine associata a una voce di menu.
COleIPFrameWndEx::OnDrawMenuLogo Chiamato dal framework quando un oggetto CMFCPopupMenuelabora un messaggio WM_PAINT.
COleIPFrameWndEx::OnMenuButtonToolHitTest Chiamato dal framework quando un oggetto CMFCToolBarButtonelabora un messaggio WM_NCHITTEST.
COleIPFrameWndEx::OnMoveMiniFrame
COleIPFrameWndEx::OnSetPreviewMode Chiamare questa funzione membro per impostare la finestra cornice principale dell'applicazione nella modalità di anteprima di stampa ed e al di fuori di essa. Esegue l'override di CFrameWnd::OnSetPreviewMode.
COleIPFrameWndEx::OnShowCustomizePane
COleIPFrameWndEx::OnShowPanes
COleIPFrameWndEx::OnShowPopupMenu Chiamato dal framework durante l'attivazione di un menu a comparsa.
COleIPFrameWndEx::OnTearOffMenu Chiamato dal framework durante l'attivazione di un menu con barra a comparsa.
COleIPFrameWndEx::P aneFromPoint
COleIPFrameWndEx::P reTranslateMessage Esegue l'override di COleIPFrameWnd::PreTranslateMessage.
COleIPFrameWndEx::RecalcLayout Esegue l'override di COleIPFrameWnd::RecalcLayout.
COleIPFrameWndEx::RemovePaneFromDockManager
COleIPFrameWndEx::SetDockState Si applica lo stato di ancoraggio specificato ai pannelli che appartengono alla finestra cornice.
COleIPFrameWndEx::SetupToolbarMenu Modifica un oggetto barra degli strumenti cercando elementi fittizi e sostituendoli con gli elementi definiti dall'utente specificati.
COleIPFrameWndEx::ShowPane
COleIPFrameWndEx::WinHelpA Chiamato dal framework per avviare l'applicazione WinHelp o la Guida sensibile al contesto.

Metodi protetti

Nome Descrizione
COleIPFrameWndEx::InitUserToobars Indica al framework di inizializzare un intervallo di ID dei controlli assegnati alle barre degli strumenti definite dall'utente.

Esempio

L'esempio seguente illustra come creare una sottoclasse per un'istanza della classe COleIPFrameWndEx e sostituirne il metodo. L'esempio illustra come sostituire i metodi OnDestory , RepositionFrame , RecalcLayout e CalcWindowRect . Questo frammento di codice fa parte dell' esempio di Word Pad.

void CInPlaceFrame::OnDestroy()
{
   m_wndToolBar.DestroyWindow();
   m_wndFormatBar.DestroyWindow();
   COleIPFrameWndEx::OnDestroy();
}

void CInPlaceFrame::RepositionFrame(LPCRECT lpPosRect, LPCRECT lpClipRect)
{
   CRect rectNew = lpPosRect;
   rectNew.left -= HORZ_TEXTOFFSET;
   rectNew.top -= VERT_TEXTOFFSET;
   m_wndResizeBar.BringWindowToTop();
   COleIPFrameWndEx::RepositionFrame(&rectNew, lpClipRect);
   CWnd *pWnd = GetActiveView();
   if (pWnd != NULL)
      pWnd->BringWindowToTop();
   m_wndRulerBar.BringWindowToTop();
}

void CInPlaceFrame::RecalcLayout(BOOL bNotify)
{
   if (m_wndResizeBar.m_hWnd != NULL)
      m_wndResizeBar.BringWindowToTop();
   COleIPFrameWndEx::RecalcLayout(bNotify);
   CWnd *pWnd = GetActiveView();
   if (pWnd != NULL)
      pWnd->BringWindowToTop();
   if (m_wndRulerBar.m_hWnd != NULL)
      m_wndRulerBar.BringWindowToTop();

   // at least 12 pt region plus ruler if it exists
   CDisplayIC dc;
   CSize size;
   size.cy = MulDiv(12, dc.GetDeviceCaps(LOGPIXELSY), 72) + 1;
   size.cx = dc.GetDeviceCaps(LOGPIXELSX) / 4; // 1/4"
   size.cx += HORZ_TEXTOFFSET;                 //adjust for offset
   size.cy += VERT_TEXTOFFSET;
   if (m_wndRulerBar.m_hWnd != NULL && m_wndRulerBar.IsVisible())
   {
      CRect rect;
      m_wndRulerBar.GetWindowRect(&rect);
      size.cy += rect.Height();
   }
   m_wndResizeBar.SetMinSize(size);
}

void CInPlaceFrame::CalcWindowRect(LPRECT lpClientRect, UINT nAdjustType)
{
   COleIPFrameWndEx::CalcWindowRect(lpClientRect, nAdjustType);
}

Gerarchia di ereditarietà

CObject

CCmdTarget

CWnd

CFrameWnd

COleIPFrameWnd

COleIPFrameWndEx

Requisiti

Intestazione: afxoleipframewndex.h

COleIPFrameWndEx::AddDockSite

void AddDockSite();

Osservazioni:

COleIPFrameWndEx::AddPane

BOOL AddPane(
    CBasePane* pControlBar,
    BOOL bTail = TRUE);

Parametri

[in] pControlBar
[in] bTail

Valore restituito

Osservazioni:

COleIPFrameWndEx::AdjustDockingLayout

virtual void AdjustDockingLayout(HDWP hdwp = NULL);

Parametri

[in] hdwp

Osservazioni:

COleIPFrameWndEx::D ockPane

void DockPane(
    CBasePane* pBar,
    UINT nDockBarID = 0,
    LPCRECT lpRect = NULL);

Parametri

[in] pBar
[in] nDockBarID
[in] lpRect

Osservazioni:

COleIPFrameWndEx::D ockPaneLeftOf

Ancora un riquadro a sinistra di un altro riquadro.

BOOL DockPaneLeftOf(
    CPane* pBar,
    CPane* pLeftOf);

Parametri

pBar
[in] Puntatore al riquadro da ancorare.

pLeftOf
[in] Puntatore al riquadro che funge da origine.

Valore restituito

Restituisce TRUE se l'operazione ha esito positivo. In caso contrario restituisce FALSE.

Osservazioni:

Chiamare questo metodo per ancorare diversi oggetti riquadro in un ordine predefinito. Questo metodo ancora il riquadro specificato da pBar a sinistra del riquadro specificato da pLeftOf.

COleIPFrameWndEx::EnableAutoHidePanes

BOOL EnableAutoHidePanes(DWORD dwDockStyle);

Parametri

[in] dwDockStyle

Valore restituito

Osservazioni:

COleIPFrameWndEx::EnableDocking

BOOL EnableDocking(DWORD dwDockStyle);

Parametri

[in] dwDockStyle

Valore restituito

Osservazioni:

COleIPFrameWndEx::EnablePaneMenu

void EnablePaneMenu(
    BOOL bEnable,
    UINT uiCustomizeCmd,
    const CString& strCustomizeLabel,
    UINT uiViewToolbarsMenuEntryID,
    BOOL bContextMenuShowsToolbarsOnly = FALSE,
    BOOL bViewMenuShowsToolbarsOnly = FALSE);

Parametri

[in] bEnable
[in] uiCustomizeCmd
[in] strCustomizeLabel
[in] uiViewToolbarsMenuEntryID
[in] bContextMenuShowsToolbarsOnly
[in] bViewMenuShowsToolbarsOnly

Osservazioni:

COleIPFrameWndEx::GetActivePopup

Restituisce un puntatore al menu a comparsa attualmente visualizzato.

CMFCPopupMenu* GetActivePopup() const;

Valore restituito

Puntatore al menu a comparsa attivo; in caso contrario NULL.

Osservazioni:

Utilizzare questo metodo per ottenere un puntatore all'oggetto Classe CMFCPopupMenu attualmente visualizzato.

COleIPFrameWndEx::GetContainerFrameWindow

COleCntrFrameWndEx* GetContainerFrameWindow();

Valore restituito

Osservazioni:

COleIPFrameWndEx::GetDefaultResId

Restituisce l'ID risorsa del menu specificato quando la finestra cornice ha caricato il menu.

UINT GetDefaultResId() const;

Valore restituito

Restituisce l'ID risorsa del menu oppure 0 se la finestra cornice non dispone di una barra dei menu.

Osservazioni:

Chiamare questa funzione per recuperare l'ID risorsa specificato quando la finestra cornice ha caricato la risorsa di menu chiamando COleIPFrameWndEx::LoadFrame.

COleIPFrameWndEx::GetDockFrame

CFrameWnd* GetDockFrame();

Valore restituito

Osservazioni:

COleIPFrameWndEx::GetDockingManager

CDockingManager* GetDockingManager();

Valore restituito

Osservazioni:

COleIPFrameWndEx::GetMainFrame

CFrameWnd* GetMainFrame();

Valore restituito

Osservazioni:

COleIPFrameWndEx::GetMenuBar

Restituisce un puntatore all'oggetto della barra dei menu collegato alla finestra cornice.

const CMFCMenuBar* GetMenuBar() const;

Valore restituito

Puntatore all'oggetto barra dei menu.

Osservazioni:

Utilizzare questa funzione per recuperare un puntatore all'oggetto barra dei menu che appartiene all'oggetto COleIPFrameWndEx .

COleIPFrameWndEx::GetPane

CBasePane* GetPane(UINT nID);

Parametri

[in] nID

Valore restituito

Osservazioni:

COleIPFrameWndEx::GetTearOffBars

Restituisce un elenco di oggetti del riquadro che si trovano in uno stato a comparsa.

const CObList& GetTearOffBars() const;

Valore restituito

Riferimento a un CObList oggetto contenente una raccolta di puntatori agli oggetti derivati dalla classe CBasePane.

Osservazioni:

L'oggetto COleIPFrameWndEx gestisce l'insieme di menu di disinstallazione come elenco di oggetti derivati dalla classe CBasePane. Utilizzare questo metodo per recuperare un riferimento a questo elenco.

COleIPFrameWndEx::GetToolbarButtonToolTipText

Chiamato dal framework prima che venga visualizzata la descrizione comando per un pulsante.

virtual BOOL GetToolbarButtonToolTipText(
    CMFCToolBarButton* pButton,
    CString& strTTText);

Parametri

pButton
[in] Puntatore al pulsante.

strTTText
[in] Puntatore al testo della descrizione comando.

Valore restituito

L'implementazione predefinita restituisce 0.

Osservazioni:

Eseguire l'override di questa funzione per personalizzare la visualizzazione delle descrizioni comando nei pulsanti della barra degli strumenti.

COleIPFrameWndEx::InitUserToobars

Specifica un intervallo di ID di controllo assegnati dal framework alle barre degli strumenti definite dall'utente.

void InitUserToolbars(
    LPCTSTR lpszRegEntry,
    UINT uiUserToolbarFirst,
    UINT uiUserToolbarLast)

Parametri

lpszRegEntry
[in] Voce del Registro di sistema in cui la libreria archivia le impostazioni della barra degli strumenti utente.

uiUserToolbarFirst
[in] ID di controllo assegnato alla prima barra degli strumenti definita dall'utente.

uiUserToolbarLast
[in] ID di controllo assegnato all'ultima barra degli strumenti definita dall'utente.

Osservazioni:

Usare questa funzione per inizializzare un intervallo di ID di controllo per l'assegnazione alle barre degli strumenti definite dagli utenti in modo dinamico. I parametri uiUserToolbarFirst e uiUserToolbarLast definiscono un intervallo di ID di controllo della barra degli strumenti consentiti. Per disabilitare la creazione di barre degli strumenti definite dall'utente, impostare uiUserToolbarFirst o uiUserToolbarLast su -1.

COleIPFrameWndEx::InsertPane

BOOL InsertPane(
    CBasePane* pControlBar,
    CBasePane* pTarget,
    BOOL bAfter = TRUE);

Parametri

[in] pControlBar
[in] pTarget
[in] bAfter

Valore restituito

Osservazioni:

COleIPFrameWndEx::IsMenuBarAvailable

Determina se il puntatore all'oggetto barra dei menu non è NULL

BOOL IsMenuBarAvailable() const;

Valore restituito

Restituisce un valore diverso da zero se la finestra cornice ha una barra dei menu; in caso contrario restituisce 0.

Osservazioni:

Chiamare questo metodo per determinare se la finestra cornice mantiene un puntatore non NULL al relativo oggetto barra dei menu.

COleIPFrameWndEx::IsPointNearDockSite

BOOL IsPointNearDockSite(
    CPoint point,
    DWORD& dwBarAlignment,
    BOOL& bOuterEdge) const;

Parametri

[in] punto
[in] dwBarAlignment
[in] bOuterEdge

Valore restituito

Osservazioni:

COleIPFrameWndEx::LoadFrame

virtual BOOL LoadFrame(
    UINT nIDResource,
    DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
    CWnd* pParentWnd = NULL,
    CCreateContext* pContext = NULL);

Parametri

[in] nIDResource
[in] dwDefaultStyle
[in] pParentWnd
[in] pContext

Valore restituito

Osservazioni:

COleIPFrameWndEx::OnCloseDockingPane

virtual BOOL OnCloseDockingPane(CDockablePane*);

Parametri

[in] CDockablePane*

Valore restituito

Osservazioni:

COleIPFrameWndEx::OnCloseMiniFrame

virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);

Parametri

[in] CPaneFrameWnd*

Valore restituito

Osservazioni:

COleIPFrameWndEx::OnClosePopupMenu

Chiamato dal framework quando un menu a comparsa attivo elabora un messaggio WM_DESTROY.

virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);

Parametri

pMenuPopup
[in] Puntatore all'oggetto menu a comparsa.

Osservazioni:

Eseguire l'override di questo metodo per ricevere notifiche dagli CMFCPopupMenu oggetti quando elaborano WM_DESTROY messaggi.

COleIPFrameWndEx::OnCmdMsg

virtual BOOL OnCmdMsg(
    UINT nID,
    int nCode,
    void* pExtra,
    AFX_CMDHANDLERINFO* pHandlerInfo);

Parametri

[in] nID
[in] nCode
[in] pExtra
[in] pHandlerInfo

Valore restituito

Osservazioni:

COleIPFrameWndEx::OnDrawMenuImage

Chiamato dal framework quando viene disegnata l'immagine associata a una voce di menu.

virtual BOOL OnDrawMenuImage(
    CDC* pDC,
    const CMFCToolBarMenuButton* pMenuButton,
    const CRect& rectImage);

Parametri

pDC
[in] Puntatore al contesto del dispositivo.

pMenuButton
[in] Puntatore al pulsante di menu.

rectImage
[in] Immagine associata alla voce di menu.

Valore restituito

L'implementazione predefinita non esegue alcuna operazione e restituisce 0.

Osservazioni:

Eseguire l'override di questo metodo se si desidera personalizzare il disegno dell'immagine per le voci di menu appartenenti alla barra dei menu di proprietà dell'oggetto COleIPFrameWndExderivato da .

Chiamato dal framework quando un oggetto CMFCPopupMenuelabora un messaggio WM_PAINT.

virtual void OnDrawMenuLogo(
    CDC* pDC,
    CMFCPopupMenu* pMenu,
    const CRect& rectLogo);

Parametri

pDC
[in] Puntatore al contesto del dispositivo.

pMenu
[in] Puntatore all'oggetto menu a comparsa.

rectLogo
[in] Puntatore al logo da visualizzare.

Osservazioni:

Eseguire l'override di questo metodo per visualizzare un logo nel menu a comparsa associato alla barra dei menu di proprietà dell'oggetto COleIPFrameWndExderivato da . L'implementazione predefinita non esegue alcuna operazione.

COleIPFrameWndEx::OnMenuButtonToolHitTest

Chiamato dal framework quando un oggetto CMFCToolBarButtonelabora un messaggio WM_NCHITTEST.

virtual BOOL OnMenuButtonToolHitTest(
    CMFCToolBarButton* pButton,
    TOOLINFO* pTI);

Parametri

[in] pButton Puntatore a un pulsante di menu.

[out] pTI Puntatore a una TOOLINFO struttura.

Valore restituito

L'implementazione predefinita non esegue alcuna operazione e restituisce 0. L'implementazione deve restituire un valore diverso da zero se riempie il parametro pTI .

Osservazioni:

Eseguire l'override di questo metodo per fornire informazioni sulla descrizione comando relative a una voce di menu specifica.

COleIPFrameWndEx::OnMoveMiniFrame

virtual BOOL OnMoveMiniFrame(CWnd* pFrame);

Parametri

[in] pFrame

Valore restituito

Osservazioni:

COleIPFrameWndEx::OnSetPreviewMode

virtual void OnSetPreviewMode(
    BOOL bPreview,
    CPrintPreviewState* pState);

Parametri

[in] bPreview
[in] pState

Osservazioni:

COleIPFrameWndEx::OnShowCustomizePane

virtual BOOL OnShowCustomizePane(
    CMFCPopupMenu* pMenuPane,
    UINT uiToolbarID);

Parametri

[in] pMenuPane
[in] uiToolbarID

Valore restituito

Osservazioni:

COleIPFrameWndEx::OnShowPanes

virtual BOOL OnShowPanes(BOOL bShow);

Parametri

[in] bShow

Valore restituito

Osservazioni:

COleIPFrameWndEx::OnShowPopupMenu

Chiamato dal framework quando viene visualizzato un menu a comparsa.

virtual BOOL OnShowPopupMenu(CMFCPopupMenu* pMenuPopup);

Parametri

pMenuPopup
[in] Puntatore al menu a comparsa da visualizzare.

Valore restituito

L'implementazione predefinita non esegue alcuna operazione e restituisce un valore diverso da zero. L'implementazione deve restituire FALSE se non è possibile visualizzare il menu a comparsa.

Osservazioni:

Eseguire l'override di questo metodo per personalizzare la visualizzazione di un menu a comparsa. Ad esempio, è possibile modificare i pulsanti di menu in pulsanti di menu a colori o inizializzare barre di disinstallazione.

COleIPFrameWndEx::OnTearOffMenu

Chiamato dal framework quando l'utente seleziona un menu con una barra di disinstallazione.

virtual BOOL OnTearOffMenu(
    CMFCPopupMenu* pMenuPopup,
    CPane* pBar);

Parametri

pMenuPopup
[in] Puntatore al menu a comparsa selezionato dall'utente.

pBar
[in] Puntatore al riquadro che ospita il menu.

Valore restituito

TRUE se si vuole che il framework attivi il menu a comparsa; in caso contrario FALSE. Il valore predefinito è TRUE.

Osservazioni:

Eseguire l'override di questa funzione se si desidera personalizzare la configurazione della barra di disinstallazione.

COleIPFrameWndEx::P aneFromPoint

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    bool bExactBar,
    CRuntimeClass* pRTCBarType) const;

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    DWORD& dwAlignment,
    CRuntimeClass* pRTCBarType) const;

Parametri

[in] punto
[in] nSensitivity
[in] bExactBar
[in] pRTCBarType
[in] dwAlignment

Valore restituito

Osservazioni:

COleIPFrameWndEx::P reTranslateMessage

virtual BOOL PreTranslateMessage(MSG* pMsg);

Parametri

[in] pMsg

Valore restituito

Osservazioni:

COleIPFrameWndEx::RecalcLayout

virtual void RecalcLayout(BOOL bNotify = TRUE);

Parametri

[in] bNotify

Osservazioni:

COleIPFrameWndEx::RemovePaneFromDockManager

void RemovePaneFromDockManager(
    CBasePane* pControlBar,
    BOOL bDestroy,
    BOOL bAdjustLayout,
    BOOL bAutoHide,
    CBasePane* pBarReplacement);

Parametri

[in] pControlBar
[in] bDestroy
[in] bAdjustLayout
[in] bAutoHide
[in] pBarReplacement

Osservazioni:

COleIPFrameWndEx::SetDockState

Applica lo stato di ancoraggio specificato ai riquadri che appartengono alla finestra cornice.

void SetDockState(const CDockState& state);

Parametri

state
[in] Specifica lo stato di ancoraggio.

Osservazioni:

Utilizzare questa funzione per specificare un nuovo stato di ancoraggio per i riquadri che appartengono all'oggetto COleIPFrameWndEx .

COleIPFrameWndEx::SetupToolbarMenu

Modifica un oggetto barra degli strumenti cercando elementi fittizi e sostituendoli con gli elementi definiti dall'utente specificati.

void SetupToolbarMenu(
    CMenu& menu,
    const UINT uiViewUserToolbarCmdFirst,
    const UINT uiViewUserToolbarCmdLast);

Parametri

menù
[in] Riferimento a un oggetto CMenu da modificare.

uiViewUserToolbarCmdFirst
[in] Specifica il primo comando definito dall'utente.

uiViewUserToolbarCmdLast
[in] Specifica l'ultimo comando definito dall'utente.

Osservazioni:

COleIPFrameWndEx::ShowPane

void ShowPane(
    CBasePane* pBar,
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Parametri

[in] pBar
[in] bShow
[in] bDelay
[in] bActivate

Osservazioni:

COleIPFrameWndEx::WinHelpA

Chiamato dal framework per avviare l'applicazione WinHelp o la Guida sensibile al contesto.

virtual void WinHelp(
    DWORD dwData,
    UINT nCmd = HELP_CONTEXT);

Parametri

[in] dwData Specifica i dati necessari per il tipo di guida specificato da nCmd.

nCmd
[in] Specifica il tipo di Guida richiesta. Per un elenco dei valori possibili e del modo in cui influiscono sul parametro dwData , vedere la funzione WinHelp in Windows SDK.

Osservazioni:

Vedi anche

Grafico della gerarchia
Classi
Classe CFrameWndEx
Classe CMDIFrameWndEx