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à
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 COleIPFrameWndEx
derivato da .
COleIPFrameWndEx::OnDrawMenuLogo
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 COleIPFrameWndEx
derivato 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