Clase COleIPFrameWndEx
La clase COleIPFrameWndEx
implementa un contenedor OLE compatible con MFC. Es necesario derivar la clase de ventana de marco en contexto de la aplicación desde la clase COleIPFrameWndEx
en lugar de derivarla desde la clase COleIPFrameWnd.
Para obtener información más detallada, consulta el código fuente que se ubica en la carpeta VC\atlmfc\src\mfc de la instalación de Visual Studio.
Sintaxis
class COleIPFrameWndEx : public COleIPFrameWnd
Miembros
Métodos públicos
Nombre | Descripción |
---|---|
COleIPFrameWndEx::AddDockSite | |
COleIPFrameWndEx::AddPane | |
COleIPFrameWndEx::AdjustDockingLayout | |
COleIPFrameWndEx::DockPane | |
COleIPFrameWndEx::DockPaneLeftOf | Acopla un panel a la izquierda de otro panel. |
COleIPFrameWndEx::EnableAutoHidePanes | |
COleIPFrameWndEx::EnableDocking | |
COleIPFrameWndEx::EnablePaneMenu | |
COleIPFrameWndEx::GetActivePopup | Devuelve un puntero al menú emergente mostrado actualmente. |
COleIPFrameWndEx::GetContainerFrameWindow | |
COleIPFrameWndEx::GetDefaultResId | Devuelve el identificador de recurso de la ventana de marco se que especificó al cargar la ventana. |
COleIPFrameWndEx::GetDockFrame | |
COleIPFrameWndEx::GetDockingManager | |
COleIPFrameWndEx::GetMainFrame | |
COleIPFrameWndEx::GetMenuBar | Devuelve un puntero al objeto de barra de menú asociado a la ventana de marco. |
COleIPFrameWndEx::GetPane | |
COleIPFrameWndEx::GetTearOffBars | Devuelve una lista de objetos de panel que están en un estado desplazable. |
COleIPFrameWndEx::GetToolbarButtonToolTipText | Lo llama el marco de trabajo antes de que aparezca la información sobre herramientas para un botón. |
COleIPFrameWndEx::InsertPane | |
COleIPFrameWndEx::IsMenuBarAvailable | Determina si el puntero al objeto de barra de menú no es NULL . |
COleIPFrameWndEx::IsPointNearDockSite | |
COleIPFrameWndEx::LoadFrame | (Invalida COleIPFrameWnd::LoadFrame ). |
COleIPFrameWndEx::OnCloseDockingPane | |
COleIPFrameWndEx::OnCloseMiniFrame | |
COleIPFrameWndEx::OnClosePopupMenu | Lo llama el marco cuando un menú emergente activo procesa un mensaje WM_DESTROY. |
COleIPFrameWndEx::OnCmdMsg | (Invalida CFrameWnd::OnCmdMsg ). |
COleIPFrameWndEx::OnDrawMenuImage | Lo llama el marco de trabajo cuando se dibuja la imagen asociada a un elemento de menú. |
COleIPFrameWndEx::OnDrawMenuLogo | Lo llama el marco de trabajo cuando un objeto CMFCPopupMenuprocesa un mensaje WM_PAINT. |
COleIPFrameWndEx::OnMenuButtonToolHitTest | Lo llama el marco cuando un objeto CMFCToolBarButtonprocesa un mensaje WM_NCHITTEST. |
COleIPFrameWndEx::OnMoveMiniFrame | |
COleIPFrameWndEx::OnSetPreviewMode | Llame a esta función miembro para establecer la ventana de marco principal de la aplicación dentro y fuera del modo de vista previa de impresión. (Invalida CFrameWnd::OnSetPreviewMode). |
COleIPFrameWndEx::OnShowCustomizePane | |
COleIPFrameWndEx::OnShowPanes | |
COleIPFrameWndEx::OnShowPopupMenu | Lo llama el marco de trabajo cuando se activa un menú emergente. |
COleIPFrameWndEx::OnTearOffMenu | Lo llama el marco de trabajo cuando se activa un menú con barra desplazable. |
COleIPFrameWndEx::PaneFromPoint | |
COleIPFrameWndEx::PreTranslateMessage | (Invalida COleIPFrameWnd::PreTranslateMessage ). |
COleIPFrameWndEx::RecalcLayout | (Invalida COleIPFrameWnd::RecalcLayout ). |
COleIPFrameWndEx::RemovePaneFromDockManager | |
COleIPFrameWndEx::SetDockState | Aplica el estado de acoplamiento especificado a los paneles que pertenecen a la ventana de marco. |
COleIPFrameWndEx::SetupToolbarMenu | Modifica un objeto de barra de herramientas al buscar elementos ficticios y reemplazarlos con los elementos definidos por el usuario especificados. |
COleIPFrameWndEx::ShowPane | |
COleIPFrameWndEx::WinHelpA | Lo llama el marco para iniciar la aplicación o la ayuda contextual de WinHelp. |
Métodos protegidos
Nombre | Descripción |
---|---|
COleIPFrameWndEx::InitUserToobars | Indica al marco que inicialice un rango de identificadores de control que están asignados a las barras de herramientas definidas por el usuario. |
Ejemplo
En el ejemplo siguiente se muestra cómo crear subclases de una instancia de la clase COleIPFrameWndEx
e invalidar sus métodos. En el ejemplo se muestra cómo invalidar el método OnDestory
, el método RepositionFrame
, el método RecalcLayout
y el método CalcWindowRect
. Este fragmento de código forma parte del ejemplo de WordPad.
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);
}
Jerarquía de herencia
Requisitos
Encabezado: afxoleipframewndex.h
COleIPFrameWndEx::AddDockSite
void AddDockSite();
Comentarios
COleIPFrameWndEx::AddPane
BOOL AddPane(
CBasePane* pControlBar,
BOOL bTail = TRUE);
Parámetros
[in] pControlBar
[in] bTail
Valor devuelto
Comentarios
COleIPFrameWndEx::AdjustDockingLayout
virtual void AdjustDockingLayout(HDWP hdwp = NULL);
Parámetros
[in] hdwp
Comentarios
COleIPFrameWndEx::DockPane
void DockPane(
CBasePane* pBar,
UINT nDockBarID = 0,
LPCRECT lpRect = NULL);
Parámetros
[in] pBar
[in] nDockBarID
[in] lpRect
Comentarios
COleIPFrameWndEx::DockPaneLeftOf
Acopla un panel a la izquierda de otro panel.
BOOL DockPaneLeftOf(
CPane* pBar,
CPane* pLeftOf);
Parámetros
pBar
[in] Puntero al panel que se va a acoplar.
pLeftOf
[in] Puntero al panel que actúa como origen.
Valor devuelto
Devuelve TRUE si la operación se realiza correctamente. En caso contrario, devuelve FALSE.
Comentarios
Llame a este método para acoplar varios objetos de panel en un orden predefinido. Este método acopla el panel especificado por pBar a la izquierda del panel especificado por pLeftOf.
COleIPFrameWndEx::EnableAutoHidePanes
BOOL EnableAutoHidePanes(DWORD dwDockStyle);
Parámetros
[in] dwDockStyle
Valor devuelto
Comentarios
COleIPFrameWndEx::EnableDocking
BOOL EnableDocking(DWORD dwDockStyle);
Parámetros
[in] dwDockStyle
Valor devuelto
Comentarios
COleIPFrameWndEx::EnablePaneMenu
void EnablePaneMenu(
BOOL bEnable,
UINT uiCustomizeCmd,
const CString& strCustomizeLabel,
UINT uiViewToolbarsMenuEntryID,
BOOL bContextMenuShowsToolbarsOnly = FALSE,
BOOL bViewMenuShowsToolbarsOnly = FALSE);
Parámetros
[in] bEnable
[in] uiCustomizeCmd
[in] strCustomizeLabel
[in] uiViewToolbarsMenuEntryID
[in] bContextMenuShowsToolbarsOnly
[in] bViewMenuShowsToolbarsOnly
Comentarios
COleIPFrameWndEx::GetActivePopup
Devuelve un puntero al menú emergente mostrado actualmente.
CMFCPopupMenu* GetActivePopup() const;
Valor devuelto
Un puntero dirigido al menú emergente activo; en caso contrario, devuelve NULL.
Comentarios
Use este método para obtener un puntero dirigido al objeto de Clase CMFCPopupMenu que se muestra actualmente.
COleIPFrameWndEx::GetContainerFrameWindow
COleCntrFrameWndEx* GetContainerFrameWindow();
Valor devuelto
Comentarios
COleIPFrameWndEx::GetDefaultResId
Devuelve el Id. de recurso de menú que se especificó cuando la ventana de marco cargó el menú.
UINT GetDefaultResId() const;
Valor devuelto
Devuelve el Id. de recurso del menú; si la ventana de marco no tiene ninguna barra de menús, devuelve cero.
Comentarios
Llame a esta función para recuperar el Id. de recurso que se especificó cuando la ventana de marco cargó el recurso de menú mediante una llamada a COleIPFrameWndEx::LoadFrame
.
COleIPFrameWndEx::GetDockFrame
CFrameWnd* GetDockFrame();
Valor devuelto
Comentarios
COleIPFrameWndEx::GetDockingManager
CDockingManager* GetDockingManager();
Valor devuelto
Comentarios
COleIPFrameWndEx::GetMainFrame
CFrameWnd* GetMainFrame();
Valor devuelto
Comentarios
COleIPFrameWndEx::GetMenuBar
Devuelve un puntero al objeto de barra de menú asociado a la ventana de marco.
const CMFCMenuBar* GetMenuBar() const;
Valor devuelto
Puntero al objeto de barra de menús.
Comentarios
Utilice esta función para recuperar un puntero dirigido al objeto de barra de menús que pertenece al objeto COleIPFrameWndEx
.
COleIPFrameWndEx::GetPane
CBasePane* GetPane(UINT nID);
Parámetros
[in] nID
Valor devuelto
Comentarios
COleIPFrameWndEx::GetTearOffBars
Devuelve una lista de objetos de panel que están en un estado desplazable.
const CObList& GetTearOffBars() const;
Valor devuelto
Referencia a un objeto CObList
que contiene una colección de punteros dirigidos a los objetos derivados de la Clase CBasePane.
Comentarios
El objeto COleIPFrameWndEx
mantiene la colección de menús desplazables como una lista de objetos derivados de la Clase CBasePane. Use este método para recuperar una referencia a esta lista.
COleIPFrameWndEx::GetToolbarButtonToolTipText
Lo llama el marco de trabajo antes de que aparezca la información sobre herramientas para un botón.
virtual BOOL GetToolbarButtonToolTipText(
CMFCToolBarButton* pButton,
CString& strTTText);
Parámetros
pButton
[in] Puntero al botón.
strTTText
[in] Puntero al texto de la información sobre herramientas.
Valor devuelto
La implementación predeterminada devuelve cero.
Comentarios
Invalide esta función para personalizar la presentación de las informaciones sobre herramientas en los botones de la barra de herramientas.
COleIPFrameWndEx::InitUserToobars
Especifica un intervalo de Ids. de control que el marco asigna a las barras de herramientas definidas por el usuario.
void InitUserToolbars(
LPCTSTR lpszRegEntry,
UINT uiUserToolbarFirst,
UINT uiUserToolbarLast)
Parámetros
lpszRegEntry
[in] La entrada del Registro en la que la biblioteca almacena la configuración del usuario para la barra de herramientas.
uiUserToolbarFirst
[in] El Id. de control asignado a la primera barra de herramientas definida por el usuario.
uiUserToolbarLast
[in] El Id. de control asignado a la última barra de herramientas definida por el usuario.
Comentarios
Use esta función para inicializar un intervalo de Ids. de control para la asignación a las barras de herramientas que los usuarios definen dinámicamente. Los parámetros uiUserToolbarFirst y uiUserToolbarLast definen un intervalo de Ids. permitidos de control de la barra de herramientas. Para deshabilitar la creación de barras de herramientas definidas por el usuario, establezca uiUserToolbarFirst o uiUserToolbarLast en -1.
COleIPFrameWndEx::InsertPane
BOOL InsertPane(
CBasePane* pControlBar,
CBasePane* pTarget,
BOOL bAfter = TRUE);
Parámetros
[in] pControlBar
[in] pTarget
[in] bAfter
Valor devuelto
Comentarios
COleIPFrameWndEx::IsMenuBarAvailable
Determina si el puntero dirigido al objeto de barra de menús no es NULL
BOOL IsMenuBarAvailable() const;
Valor devuelto
Devuelve un valor distinto de cero si la ventana de marco tiene una barra de menús; de lo contrario, devuelve cero.
Comentarios
Llame a este método para determinar si la ventana de marco mantiene un puntero distinto de NULL dirigido a su objeto de barra de menús.
COleIPFrameWndEx::IsPointNearDockSite
BOOL IsPointNearDockSite(
CPoint point,
DWORD& dwBarAlignment,
BOOL& bOuterEdge) const;
Parámetros
[in] point
[in] dwBarAlignment
[in] bOuterEdge
Valor devuelto
Comentarios
COleIPFrameWndEx::LoadFrame
virtual BOOL LoadFrame(
UINT nIDResource,
DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
CWnd* pParentWnd = NULL,
CCreateContext* pContext = NULL);
Parámetros
[in] nIDResource
[in] dwDefaultStyle
[in] pParentWnd
[in] pContext
Valor devuelto
Comentarios
COleIPFrameWndEx::OnCloseDockingPane
virtual BOOL OnCloseDockingPane(CDockablePane*);
Parámetros
[in] CDockablePane*
Valor devuelto
Comentarios
COleIPFrameWndEx::OnCloseMiniFrame
virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);
Parámetros
[in] CPaneFrameWnd*
Valor devuelto
Comentarios
COleIPFrameWndEx::OnClosePopupMenu
Lo llama el marco cuando un menú emergente activo procesa un mensaje WM_DESTROY.
virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);
Parámetros
pMenuPopup
[in] Puntero al objeto de menú emergente.
Comentarios
Invalide este método para recibir notificaciones de objetos CMFCPopupMenu
cuando procesan mensajes WM_DESTROY.
COleIPFrameWndEx::OnCmdMsg
virtual BOOL OnCmdMsg(
UINT nID,
int nCode,
void* pExtra,
AFX_CMDHANDLERINFO* pHandlerInfo);
Parámetros
[in] nID
[in] nCode
[in] pExtra
[in] pHandlerInfo
Valor devuelto
Comentarios
COleIPFrameWndEx::OnDrawMenuImage
El marco de trabajo llama a este método cuando se dibuja la imagen asociada a un elemento de menú.
virtual BOOL OnDrawMenuImage(
CDC* pDC,
const CMFCToolBarMenuButton* pMenuButton,
const CRect& rectImage);
Parámetros
pDC
[in] Puntero al contexto del dispositivo.
pMenuButton
[in] Puntero al botón del menú.
rectImage
[in] La imagen asociada al elemento del menú.
Valor devuelto
La implementación predeterminada no hace nada y devuelve cero.
Comentarios
Invalide este método si desea personalizar el dibujo de imágenes para los elementos de menú que pertenecen a la barra de menús propiedad del objeto derivado de COleIPFrameWndEx
.
COleIPFrameWndEx::OnDrawMenuLogo
Lo llama el marco de trabajo cuando un objeto CMFCPopupMenuprocesa un mensaje WM_PAINT.
virtual void OnDrawMenuLogo(
CDC* pDC,
CMFCPopupMenu* pMenu,
const CRect& rectLogo);
Parámetros
pDC
[in] Puntero al contexto del dispositivo.
pMenu
[in] Puntero al objeto de menú emergente.
rectLogo
[in] Puntero al logotipo que se va a mostrar.
Comentarios
Invalide este método para mostrar un logotipo en el menú emergente asociado a la barra de menús propiedad del objeto derivado de COleIPFrameWndEx
. La implementación predeterminada no hace nada.
COleIPFrameWndEx::OnMenuButtonToolHitTest
El marco de trabajo llama a este método cuando un objeto CMFCToolBarButton procesa un mensaje WM_NCHITTEST.
virtual BOOL OnMenuButtonToolHitTest(
CMFCToolBarButton* pButton,
TOOLINFO* pTI);
Parámetros
[in] Puntero pButton dirigido a un botón de menú.
[out] Puntero pTI dirigido a una estructura TOOLINFO
.
Valor devuelto
La implementación predeterminada no hace nada y devuelve cero. La implementación debe devolver un valor distinto de cero si rellena el parámetro pTI.
Comentarios
Invalide este método para proporcionar la información sobre herramientas (ToolTip) de un elemento específico del menú.
COleIPFrameWndEx::OnMoveMiniFrame
virtual BOOL OnMoveMiniFrame(CWnd* pFrame);
Parámetros
[in] pFrame
Valor devuelto
Comentarios
COleIPFrameWndEx::OnSetPreviewMode
virtual void OnSetPreviewMode(
BOOL bPreview,
CPrintPreviewState* pState);
Parámetros
[in] bPreview
[in] pState
Comentarios
COleIPFrameWndEx::OnShowCustomizePane
virtual BOOL OnShowCustomizePane(
CMFCPopupMenu* pMenuPane,
UINT uiToolbarID);
Parámetros
[in] pMenuPane
[in] uiToolbarID
Valor devuelto
Comentarios
COleIPFrameWndEx::OnShowPanes
virtual BOOL OnShowPanes(BOOL bShow);
Parámetros
[in] bShow
Valor devuelto
Comentarios
COleIPFrameWndEx::OnShowPopupMenu
El marco de trabajo llama a este método cuando se muestra un menú emergente.
virtual BOOL OnShowPopupMenu(CMFCPopupMenu* pMenuPopup);
Parámetros
pMenuPopup
[in] Puntero al menú emergente que se va a mostrar.
Valor devuelto
La implementación predeterminada no hace nada y devuelve un valor distinto de cero. La implementación debe devolver FALSE si no se puede mostrar el menú emergente.
Comentarios
Invalide este método para personalizar la presentación de un menú emergente. Por ejemplo, podría cambiar los botones de menú a botones de menú de colores o inicializar barras desplazables.
COleIPFrameWndEx::OnTearOffMenu
El marco de trabajo llama a este método cuando el usuario selecciona un menú que tiene una barra desplazable.
virtual BOOL OnTearOffMenu(
CMFCPopupMenu* pMenuPopup,
CPane* pBar);
Parámetros
pMenuPopup
[in] Puntero al menú emergente seleccionado por el usuario.
pBar
[in] Puntero al panel que hospeda el menú.
Valor devuelto
TRUE si desea que el marco active el menú emergente; en caso contrario, devuelve FALSE. El valor predeterminado es TRUE.
Comentarios
Invalide esta función si desea personalizar la configuración de la barra desplazable.
COleIPFrameWndEx::PaneFromPoint
CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
bool bExactBar,
CRuntimeClass* pRTCBarType) const;
CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
DWORD& dwAlignment,
CRuntimeClass* pRTCBarType) const;
Parámetros
[in] point
[in] nSensitivity
[in] bExactBar
[in] pRTCBarType
[in] dwAlignment
Valor devuelto
Comentarios
COleIPFrameWndEx::PreTranslateMessage
virtual BOOL PreTranslateMessage(MSG* pMsg);
Parámetros
[in] pMsg
Valor devuelto
Comentarios
COleIPFrameWndEx::RecalcLayout
virtual void RecalcLayout(BOOL bNotify = TRUE);
Parámetros
[in] bNotify
Comentarios
COleIPFrameWndEx::RemovePaneFromDockManager
void RemovePaneFromDockManager(
CBasePane* pControlBar,
BOOL bDestroy,
BOOL bAdjustLayout,
BOOL bAutoHide,
CBasePane* pBarReplacement);
Parámetros
[in] pControlBar
[in] bDestroy
[in] bAdjustLayout
[in] bAutoHide
[in] pBarReplacement
Comentarios
COleIPFrameWndEx::SetDockState
Aplica el estado de acoplamiento especificado a los paneles que pertenecen a la ventana de marco.
void SetDockState(const CDockState& state);
Parámetros
state
[in] Especifica el estado de acoplamiento.
Comentarios
Use esta función para especificar un nuevo estado de acoplamiento para los paneles que pertenecen al objeto COleIPFrameWndEx
.
COleIPFrameWndEx::SetupToolbarMenu
Modifica un objeto de barra de herramientas al buscar elementos ficticios y reemplazarlos con los elementos definidos por el usuario especificados.
void SetupToolbarMenu(
CMenu& menu,
const UINT uiViewUserToolbarCmdFirst,
const UINT uiViewUserToolbarCmdLast);
Parámetros
menú
[in] Referencia a un objeto CMenu que se va a modificar.
uiViewUserToolbarCmdFirst
[in] Especifica el primer comando definido por el usuario.
uiViewUserToolbarCmdLast
[in] Especifica el último comando definido por el usuario.
Comentarios
COleIPFrameWndEx::ShowPane
void ShowPane(
CBasePane* pBar,
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
Parámetros
[in] pBar
[in] bShow
[in] bDelay
[in] bActivate
Comentarios
COleIPFrameWndEx::WinHelpA
Lo llama el marco para iniciar la aplicación o la ayuda contextual de WinHelp.
virtual void WinHelp(
DWORD dwData,
UINT nCmd = HELP_CONTEXT);
Parámetros
[in] dwData Especifica datos según sea necesario para el tipo de ayuda indicada por nCmd.
nCmd
[in] Especifica el tipo de ayuda solicitada. Para obtener una lista de posibles valores y saber cómo afectan al parámetro dwData, consulte la Función WinHelp en Windows SDK.
Comentarios
Consulte también
Gráfico de jerarquías
Clases
CFrameWndEx (clase)
CMDIFrameWndEx (clase)