Clase CMDIFrameWndEx
Extiende la funcionalidad de CMDIFrameWnd
, una ventana de marco de la interfaz de varios documentos (MDI) de Windows.
Sintaxis
class CMDIFrameWndEx : public CMDIFrameWnd
Miembros
Métodos públicos
Nombre | Descripción |
---|---|
CMDIFrameWndEx::ActiveItemRecalcLayout |
Vuelve a calcular el diseño del elemento activo. |
CMDIFrameWndEx::AddDockSite |
Este método no se usa. |
CMDIFrameWndEx::AddPane |
Registra un panel con el administrador de acoplamiento. |
CMDIFrameWndEx::AdjustClientArea |
Reduce el área de cliente para permitir un borde. |
CMDIFrameWndEx::AdjustDockingLayout |
Vuelve a calcular el diseño de todos los paneles acoplados. |
CMDIFrameWndEx::AreMDITabs |
Determina si la característica Fichas de MDI o la característica Grupos con fichas de MDI está habilitada. |
CMDIFrameWndEx::CanConvertControlBarToMDIChild |
Lo llama el marco para determinar si la ventana de marco puede convertir los paneles de acoplamiento en documentos con fichas. |
CMDIFrameWndEx::ControlBarToTabbedDocument |
Convierte el panel de acoplamiento especificado en un documento con fichas. |
CMDIFrameWndEx::CreateDocumentWindow |
Crea una ventana de documento secundaria. |
CMDIFrameWndEx::CreateNewWindow |
El marco llama a esta función para crear una nueva ventana. |
CMDIFrameWndEx::CreateObject |
Usado por el marco de trabajo para crear una instancia dinámica de este tipo de clase. |
CMDIFrameWndEx::DockPane |
Acopla el panel especificado a la ventana de marco. |
CMDIFrameWndEx::DockPaneLeftOf |
Acopla un panel a la izquierda de otro panel. |
CMDIFrameWndEx::EnableAutoHidePanes |
Habilita el modo de ocultación automática para los paneles cuando se acoplan en los lados especificados de la ventana del marco principal. |
CMDIFrameWndEx::EnableDocking |
Habilita el acoplamiento de los paneles que pertenecen a la ventana de marco MDI. |
CMDIFrameWndEx::EnableFullScreenMainMenu |
Muestra u oculta el menú principal en modo de pantalla completa. |
CMDIFrameWndEx::EnableFullScreenMode |
Habilita el modo de pantalla completa para la ventana de marco. |
CMDIFrameWndEx::EnableLoadDockState |
Habilita o deshabilita la carga del estado de acoplamiento. |
CMDIFrameWndEx::EnableMDITabbedGroups |
Habilita o deshabilita la característica Grupos con fichas de MDI. |
CMDIFrameWndEx::EnableMDITabs |
Habilita o deshabilita la característica Fichas de MDI. Cuando está habilitada, la ventana de marco muestra una ficha para cada ventana secundaria MDI. |
CMDIFrameWndEx::EnableMDITabsLastActiveActivation |
Especifica si se debe activar la última ficha activa cuando el usuario cierra la ficha actual. |
CMDIFrameWndEx::EnablePaneMenu |
Habilita o deshabilita la creación y administración automáticas del menú del panel emergente, que muestra una lista de paneles de aplicaciones. |
CMDIFrameWndEx::EnableWindowsDialog |
Inserta un elemento de menú cuyo id. de comando llama a un cuadro de diálogo CMFCWindowsManagerDialog . |
CMDIFrameWndEx::GetActivePopup |
Devuelve un puntero al menú emergente mostrado actualmente. |
CMDIFrameWndEx::GetPane |
Devuelve un puntero al panel que tiene el id. de control especificado. |
CMDIFrameWndEx::GetDefaultResId |
Devuelve el id. de los recursos compartidos de la ventana de marco MDI. |
CMDIFrameWndEx::GetMDITabGroups |
Devuelve una lista de ventanas con fichas de MDI. |
CMDIFrameWndEx::GetMDITabs |
Devuelve una referencia a la ventana con fichas subrayada. |
CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems |
Devuelve una combinación de marcas que determina qué elementos de menú contextual son válidos cuando la característica Grupos con fichas de MDI está habilitada. |
CMDIFrameWndEx::GetMenuBar |
Devuelve un puntero al objeto de barra de menús asociado a la ventana de marco. |
CMDIFrameWndEx::GetRibbonBar |
Recupera el control de barra de la cinta de opciones para el marco. |
CMDIFrameWndEx::GetTearOffBars |
Devuelve una lista de objetos derivados de CPane que están en estado desprendible. |
CMDIFrameWndEx::GetThisClass |
El marco llama a este elemento para obtener un puntero al objeto CRuntimeClass asociado a este tipo de clase. |
CMDIFrameWndEx::GetToolbarButtonToolTipText |
Llamado por el marco cuando la aplicación muestra la información sobre herramientas de un botón de la barra de herramientas. |
CMDIFrameWndEx::InsertPane |
Registra el panel especificado con el administrador de acoplamiento. |
CMDIFrameWndEx::IsFullScreen |
Determina si la ventana de marco está en modo de pantalla completa. |
CMDIFrameWndEx::IsMDITabbedGroup |
Determina si la característica Grupos con fichas de MDI está habilitada. |
CMDIFrameWndEx::IsMemberOfMDITabGroup |
Determina si la ventana con fichas especificada está en la lista de ventanas que se encuentran en Grupos con fichas de MDI. |
CMDIFrameWndEx::IsMenuBarAvailable |
Determina si la ventana de marco tiene una barra de menús. |
CMDIFrameWndEx::IsPointNearDockSite |
Determina si un punto especificado está cerca del sitio de acoplamiento. |
CMDIFrameWndEx::IsPrintPreview |
Determina si la ventana de marco está en modo de vista previa de impresión. |
CMDIFrameWndEx::LoadFrame |
Crea una ventana de marco a partir de la información de recursos. (Invalida CMDIFrameWnd::LoadFrame ). |
CMDIFrameWndEx::LoadMDIState |
Carga el diseño especificado de Grupos con fichas de MDI y la lista de documentos abiertos previamente. |
CMDIFrameWndEx::MDITabMoveToNextGroup |
Mueve la ficha activa de la ventana con fichas activa actualmente al grupo con fichas siguiente o anterior. |
CMDIFrameWndEx::MDITabNewGroup |
Crea un nuevo grupo con fichas que tiene una sola ventana. |
CMDIFrameWndEx::NegotiateBorderSpace |
Negocia el espacio de borde en una ventana de marco durante la activación en contexto de OLE. |
CMDIFrameWndEx::OnCloseDockingPane |
Lo llama el marco cuando el usuario hace clic en el botón Cerrar en un panel acoplable. |
CMDIFrameWndEx::OnCloseMiniFrame |
Llamado por el marco cuando el usuario hace clic en el botón Cerrar en una ventana minimarco flotante. |
CMDIFrameWndEx::OnClosePopupMenu |
Lo llama el marco cuando un menú emergente activo procesa un mensaje WM_DESTROY . |
CMDIFrameWndEx::OnCmdMsg |
Lo llama el marco para enrutar y enviar mensajes de comando y actualizar objetos de interfaz de usuario de comandos. |
CMDIFrameWndEx::OnDrawMenuImage |
Lo llama el marco de trabajo cuando se dibuja la imagen asociada a un elemento de menú. |
CMDIFrameWndEx::OnDrawMenuLogo |
Lo llama el marco cuando un objeto CMFCPopupMenu procesa un mensaje WM_PAINT . |
CMDIFrameWndEx::OnEraseMDIClientBackground |
Lo llama el marco cuando la ventana de marco MDI procesa un mensaje WM_ERASEBKGND . |
CMDIFrameWndEx::OnMenuButtonToolHitTest |
Llamado por el marco cuando un objeto CMFCToolBarButton procesa un mensaje WM_NCHITTEST . |
CMDIFrameWndEx::OnMoveMiniFrame |
El marco llama a este método para mover una ventana minimarco. |
CMDIFrameWndEx::OnSetPreviewMode |
Establece el modo de vista previa de impresión de la ventana de marco principal de la aplicación. (Invalida CFrameWnd::OnSetPreviewMode ). |
CMDIFrameWndEx::OnShowCustomizePane |
Lo llama el marco cuando se activa un panel Personalización rápida. |
CMDIFrameWndEx::OnShowMDITabContextMenu |
Lo llama el marco cuando debe mostrarse un menú contextual en una de las fichas. (Válido solo para grupos con fichas de MDI). |
CMDIFrameWndEx::OnShowPanes |
Llamado por el marco para mostrar u ocultar paneles. |
CMDIFrameWndEx::OnShowPopupMenu |
Lo llama el marco de trabajo cuando se activa un menú emergente. |
CMDIFrameWndEx::OnSizeMDIClient |
Lo llama el marco cuando cambia el tamaño de la ventana MDI del cliente. |
CMDIFrameWndEx::OnTearOffMenu |
Lo llama el marco de trabajo cuando se activa un menú con barra desplazable. |
CMDIFrameWndEx::OnUpdateFrameMenu |
Lo llama el marco para actualizar el menú de marco. (Invalida CMDIFrameWnd::OnUpdateFrameMenu ). |
CMDIFrameWndEx::PaneFromPoint |
Devuelve el panel de acoplamiento que contiene el punto especificado. |
CMDIFrameWndEx::PreTranslateMessage |
Lo usa la clase CWinApp para traducir los mensajes de ventana antes de que se distribuyan a las funciones TranslateMessage y DispatchMessage de Windows. (Invalida CMDIFrameWnd::PreTranslateMessage ). |
CMDIFrameWndEx::RecalcLayout |
Lo llama el marco para volver a calcular el diseño de la ventana de marco. (Invalida CFrameWnd::RecalcLayout ). |
CMDIFrameWndEx::RemovePaneFromDockManager |
Anula el registro de un panel y lo quita del administrador de acoplamiento. |
CMDIFrameWndEx::SaveMDIState |
Guarda el diseño de Grupos con fichas de MDI y la lista de documentos abiertos previamente. |
CMDIFrameWndEx::SetPrintPreviewFrame |
Establece la ventana de marco de la vista previa de impresión. |
CMDIFrameWndEx::SetupToolbarMenu |
Modifica un objeto de barra de herramientas al buscar elementos ficticios y reemplazarlos con los elementos definidos por el usuario especificados. |
CMDIFrameWndEx::ShowFullScreen |
Cambia el marco principal del modo normal al modo de pantalla completa. |
CMDIFrameWndEx::ShowPane |
Muestra u oculta el panel especificado. |
CMDIFrameWndEx::ShowWindowsDialog |
Crea un cuadro CMFCWindowsManagerDialog y lo abre. |
CMDIFrameWndEx::TabbedDocumentToControlBar |
Convierte el documento con fichas especificado en un panel de acoplamiento. |
CMDIFrameWndEx::UpdateCaption |
Lo llama el marco para actualizar la barra de título de la ventana de marco. |
CMDIFrameWndEx::UpdateMDITabbedBarsIcons |
Establece el icono de cada panel con fichas de MDI. |
CMDIFrameWndEx::WinHelp |
Lo llama el marco para iniciar la aplicación o la ayuda contextual de WinHelp. (Invalida CWnd::WinHelp ). |
Miembros de datos
Nombre | Descripción |
---|---|
CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild |
Determina si los paneles de acoplamiento se pueden convertir en ventanas secundarias MDI. |
CMDIFrameWndEx::m_bDisableSetRedraw |
Habilita o deshabilita la optimización de volver a dibujar para las ventanas secundarias MDI. |
Comentarios
Para aprovechar las características de personalización extendidas de la aplicación MDI, derive la clase de ventana de marco MDI de la aplicación de CMDIFrameWndEx
lugar de CMDIFrameWnd
.
Ejemplo
En el siguiente ejemplo se deriva una clase de CMDIFrameWndEx
. Este fragmento de código procede de Ejemplo de DrawClient: aplicación de dibujo de objetos OLE basado en la cinta de MFC.
class CMainFrame : public CMDIFrameWndEx
{
DECLARE_DYNAMIC(CMainFrame)
public:
struct XStyle
{
COLORREF clrFill;
COLORREF clrLine;
};
public:
CMainFrame();
// Attributes
public:
CMFCRibbonBar *GetRibbonBar() { return &m_wndRibbonBar; }
// Operations
public:
void UpdateUI(CDrawView *pCurrView);
void UpdateContextTab(CDrawView *pCurrView);
void UpdateContextTabFromObject(CDrawObjList &list);
COLORREF GetColorFromColorButton(int nButtonID);
int GetWeightFromLineWeight(int nButtonID);
BOOL GetStyleFromStyles(XStyle &style);
void SetRibbonContextCategory(UINT uiCategoryID);
void ActivateRibbonContextCategory(UINT uiCategoryID);
// Implementation
public:
virtual ~CMainFrame();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext &dc) const;
#endif
protected:
// control bar embedded members
CMFCRibbonStatusBar m_wndStatusBar;
CMFCRibbonBar m_wndRibbonBar;
CMFCRibbonApplicationButton m_MainButton;
// panel images
CMFCToolBarImages m_PanelImages;
// Document colors for demo:
CList<COLORREF, COLORREF> m_lstMainColors;
CList<COLORREF, COLORREF> m_lstAdditionalColors;
CList<COLORREF, COLORREF> m_lstStandardColors;
// Generated message map functions
protected:
//{{AFX_MSG(CMainFrame)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnAppLook(UINT id);
afx_msg void OnUpdateAppLook(CCmdUI *pCmdUI);
afx_msg void OnWindowManager();
afx_msg void OnMdiMoveToNextGroup();
afx_msg void OnMdiMoveToPrevGroup();
afx_msg void OnMdiNewHorzTabGroup();
afx_msg void OnMdiNewVertGroup();
afx_msg void OnMdiCancel();
afx_msg LRESULT OnRibbonCustomize(WPARAM wp, LPARAM lp);
afx_msg LRESULT OnHighlightRibbonListItem(WPARAM wp, LPARAM lp);
afx_msg void OnToolsOptions();
afx_msg void OnDummy();
afx_msg void OnSysColorChange();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
virtual BOOL OnShowMDITabContextMenu(CPoint point, DWORD dwAllowedItems, BOOL bDrop);
virtual BOOL OnShowPopupMenu(CMFCPopupMenu *pMenuPopup);
void ShowOptions(int nPage);
void CreateDocumentColors();
private:
BOOL CreateRibbonBar();
BOOL CreateStatusBar();
void InitMainButton();
void InitHomeCategory();
void InitViewCategory();
void InitTabButtons();
void AddContextTab_Format();
void AdjustObjectSubmenu(CMFCPopupMenu *pMenuPopup);
void UpdateStatusBarCountPane(int nID, CString strText, int nCount);
UINT m_nAppLook;
};
Jerarquía de herencia
Requisitos
Encabezado: afxMDIFrameWndEx.h
CMDIFrameWndEx::ActiveItemRecalcLayout
Vuelve a calcular el diseño del elemento activo.
void ActiveItemRecalcLayout();
CMDIFrameWndEx::AddPane
Registra un panel con el administrador de acoplamiento.
BOOL AddPane(
CBasePane* pControlBar,
BOOL bTail=TRUE);
Parámetros
pControlBar
[in] Puntero al panel que se va a registrar.
bTail
[in] Especifica si se va a agregar este panel al final de la lista.
Valor devuelto
Devuelve un valor distinto de cero si el panel se registra correctamente. Devuelve 0 si el panel ya está registrado con el administrador de acoplamiento.
Comentarios
Cada panel debe registrarse con la clase CDockingManager
para poder participar en el diseño de acoplamiento. Use este método para notificar al administrador de acoplamiento que desea acoplar un panel específico. Una vez registrado ese panel, el administrador de acoplamiento lo alinea en función de su configuración de alineación y posición en la lista de paneles mantenidos por el administrador de acoplamiento.
CMDIFrameWndEx::AdjustClientArea
Reduce el área de cliente para permitir un borde.
virtual void AdjustClientArea();
CMDIFrameWndEx::AdjustDockingLayout
Vuelve a calcular el diseño de todos los paneles acoplados.
virtual void AdjustDockingLayout(HDWP hdwp=NULL);
Parámetros
hdwp
[in] Identifica la estructura de posición de varias ventanas. Puede obtener este valor llamando a BeginDeferWindowPos
.
Comentarios
Llame a esta función miembro para volver a calcular el diseño de todos los paneles acoplados a la ventana de marco.
CMDIFrameWndEx::AreMDITabs
Determina si la característica Fichas de MDI o la característica de grupos con fichas de MDI está habilitada.
BOOL AreMDITabs(int* pnMDITabsType=NULL) const;
Parámetros
pnMDITabsType
[out] Puntero a una variable de entero que indica qué características están habilitadas:
- 0: Todas las características están deshabilitadas.
- 1: Las fichas de MDI están habilitadas.
- 2: Los grupos con fichas de MDI están habilitados.
Valor devuelto
Devuelve TRUE
si las fichas de MDI o los grupos con fichas de MDI están habilitados.
Devuelve FALSE
si ninguna de las características anteriores está habilitada.
Comentarios
Use esta función para determinar si las fichas de MDI o los grupos con fichas de MDI están habilitados para la ventana de marco. Use CMDIFrameWndEx::EnableMDITabs
para habilitar o deshabilitar la característica Fichas de MDI.
Use CMDIFrameWndEx::EnableMDITabbedGroups
para habilitar o deshabilitar la característica de grupos con fichas de MDI.
CMDIFrameWndEx::CanConvertControlBarToMDIChild
Lo llama el marco para determinar si la ventana de marco puede convertir los paneles de acoplamiento en documentos con fichas.
virtual BOOL CanConvertControlBarToMDIChild();
Valor devuelto
Devuelve TRUE
si la ventana de marco puede convertir paneles de acoplamiento en documentos con fichas; de lo contrario, devuelve FALSE
.
Comentarios
Invalide este método en una clase derivada y devuelva TRUE
para habilitar la conversión de paneles de acoplamiento en documentos con fichas. También puede establecer CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild
en TRUE
.
CMDIFrameWndEx::ControlBarToTabbedDocument
Convierte el panel de acoplamiento especificado en un documento con fichas.
virtual CMDIChildWndEx* ControlBarToTabbedDocument(CDockablePane* pBar);
Parámetros
pBar
Puntero al panel de acoplamiento que se va a convertir.
Valor devuelto
Devuelve un puntero a la nueva ventana secundaria MDI que contiene el panel de acoplamiento.
Comentarios
Este método convierte un panel de acoplamiento en un documento con fichas. Al llamar a este método, el marco crea un objeto clase CMDIChildWndEx
, quita el panel de acoplamiento del administrador de acoplamiento y agrega el panel de acoplamiento a la nueva ventana secundaria MDI. La ventana secundaria MDI cambia el tamaño del panel de acoplamiento para cubrir todo el área de cliente.
CMDIFrameWndEx::CreateDocumentWindow
Crea una ventana de documento secundaria.
virtual CMDIChildWndEx* CreateDocumentWindow(
LPCTSTR lpcszDocName,
CObject* pObj);
Parámetros
lpcszDocName
[in] Cadena de texto que contiene un identificador de documento. Normalmente, es la ruta de acceso completa de un archivo de documento.
pObj
[in] Puntero a un objeto definido por el usuario. Por ejemplo, un desarrollador puede crear una estructura de datos específica de la aplicación que describa el documento e indique cómo se debe inicializar el documento al iniciarse.
Valor devuelto
Puntero a CMDIChildWndEx
.
Comentarios
El marco llama a este método cuando carga la lista de documentos guardados anteriormente en el registro.
Invalide este método para crear documentos cuando se cargan desde el registro.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa CreateDocumentWindow
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
En este ejemplo, g_strStartViewName
podría ser el nombre de un "documento virtual" (por ejemplo, "Página de inicio") que no se carga desde un archivo de disco. Por lo tanto, necesitamos un procesamiento especial para controlar ese caso.
CMainFrame::CMainFrame()
{
CMFCPopupMenu::SetForceShadow(TRUE);
m_bCanConvertControlBarToMDIChild = TRUE;
}
CMDIFrameWndEx::CreateNewWindow
El marco llama a esta función para crear una nueva ventana.
virtual CMDIChildWndEx* CreateNewWindow(
LPCTSTR lpcszDocName,
CObject* pObj);
Parámetros
lpcszDocName
[in] Nombre del documento.
pObj
[in] Reservado para uso futuro.
Valor devuelto
Puntero en la nueva ventana.
CMDIFrameWndEx::DockPane
Acopla el panel especificado a la ventana de marco.
void DockPane(
CBasePane* pBar,
UINT nDockBarID=0,
LPCRECT lpRect=NULL);
Parámetros
pBar
[in] Puntero al panel que se va a acoplar.
nDockBarID
[in] Especifica a qué lados de la ventana de marco se acopla.
lpRect
[in] No se utiliza.
Comentarios
Este método acopla el panel especificado a uno de los lados de la ventana de marco que se especificó cuando se llamó a CBasePane::EnableDocking
y CMDIFrameWndEx::EnableDocking
.
Ejemplo
En el siguiente ejemplo se muestra el uso del método DockPane
. Este fragmento de código procede de Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
DockPane(&m_wndMenuBar);
DockPane(&m_wndToolBar);
DockPane(&m_wndPropertiesBar);
DockPane(&m_wndToolbarBuild);
CMDIFrameWndEx::DockPaneLeftOf
Acopla un panel a la izquierda de otro panel.
BOOL DockPaneLeftOf(
CPane* pBar,
CPane* pLeftOf);
Parámetros
pBar
[in] Puntero al panel de acoplamiento.
pLeftOf
[in] Puntero al panel que actúa como sitio de acoplamiento.
Valor devuelto
Devuelve TRUE
si la operación se realiza correctamente. De lo 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
.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa el método DockPaneLeftOf
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
DockPane(&m_wndToolbarBuild);
DockPaneLeftOf(&m_wndToolbarEdit, &m_wndToolbarBuild);
CMDIFrameWndEx::EnableAutoHidePanes
Habilita el modo de ocultación automática para los paneles cuando se acoplan en los lados especificados de la ventana de marco principal.
BOOL EnableAutoHidePanes(DWORD dwDockStyle);
Parámetros
dwDockStyle
[in] Especifica los lados de la ventana de marco principal que se habilitarán. Use una o varias de las marcas siguientes:
CBRS_ALIGN_LEFT
CBRS_ALIGN_RIGHT
CBRS_ALIGN_TOP
CBRS_ALIGN_BOTTOM
Valor devuelto
Llame a esta función para habilitar la ocultación automática para los paneles cuando se acoplan en los lados especificados de la ventana de marco principal.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa el método EnableAutoHidePanes
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
EnableAutoHidePanes(CBRS_ALIGN_ANY);
Comentarios
CMDIFrameWndEx::EnableDocking
Habilita el acoplamiento de los paneles que pertenecen a la ventana de marco MDI.
BOOL EnableDocking(DWORD dwDockStyle);
Parámetros
dwDockStyle
[in] Especifica el estilo de acoplamiento que quiere aplicar.
Valor devuelto
Comentarios
Llame a esta función para habilitar el acoplamiento de paneles que pertenecen al objeto CMDIFrameWndEx
.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa el método EnableDocking
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
EnableDocking(CBRS_ALIGN_ANY);
CMDIFrameWndEx::EnableFullScreenMainMenu
Muestra u oculta el menú principal en modo de pantalla completa.
void EnableFullScreenMainMenu(BOOL bEnableMenu);
Parámetros
bEnableMenu
[in] TRUE
para mostrar el menú principal en modo de pantalla completa o FALSE
ocultarlo.
Comentarios
CMDIFrameWndEx::EnableFullScreenMode
Habilita el modo de pantalla completa para la ventana de marco.
void EnableFullScreenMode(UINT uiFullScreenCmd);
Parámetros
uiFullScreenCmd
[in] Id. de un comando que habilita o deshabilita el modo de pantalla completa.
Comentarios
En el modo de pantalla completa, todas las barras de control de acoplamiento, las barras de herramientas y el menú están ocultos y se cambia el tamaño de la vista activa para ocupar la pantalla completa. Al habilitar el modo de pantalla completa, debe especificar un id. del comando que habilita o deshabilita este modo. Puede llamar a EnableFullScreenMode
desde la función OnCreate
del marco principal. Cuando se cambia una ventana de marco al modo de pantalla completa, el marco crea una barra de herramientas flotante con un botón que tiene el id. de comando especificado. Si quiere conservar el menú principal en la pantalla, llame a CMDIFrameWndEx::EnableFullScreenMainMenu
.
CMDIFrameWndEx::EnableLoadDockState
Habilita o deshabilita la carga del estado de acoplamiento.
void EnableLoadDockState(BOOL bEnable = TRUE);
Parámetros
bEnable
[in] TRUE
para habilitar la carga del estado de acoplamiento, FALSE
para deshabilitar la carga del estado de acoplamiento.
Comentarios
CMDIFrameWndEx::EnableMDITabbedGroups
Habilita o deshabilita la característica de grupos con fichas de MDI para la ventana de marco.
void EnableMDITabbedGroups(
BOOL bEnable,
const CMDITabInfo& params);
Parámetros
bEnable
[in] Si es TRUE
, la característica de grupos con fichas de MDI está habilitada; si es FALSE
, la característica de grupos con fichas de MDI está deshabilitada.
params
[in] Especifica parámetros que el marco aplica a las ventanas secundarias que se crean en el área de cliente MDI.
Comentarios
Use este método para habilitar o deshabilitar la característica de grupos con fichas de MDI. Esta característica permite a las aplicaciones MDI mostrar ventanas secundarias como ventanas con fichas alineadas vertical u horizontalmente dentro del área del cliente MDI. Los grupos de ventanas con fichas se separan con separadores. El usuario puede cambiar el tamaño de los grupos con fichas mediante un separador.
El usuario puede:
- Arrastrar fichas individuales entre grupos.
- Arrastrar fichas individuales al borde de la ventana para crear nuevos grupos.
- Mover fichas o crear grupos nuevos mediante un menú contextual.
- La aplicación puede guardar el diseño actual de las ventanas con fichas y la lista de documentos abiertos actualmente.
Si llama a este método con bEnable
establecido en FALSE
, params
se omite.
Incluso si los grupos con fichas de MDI ya están habilitados, puede llamar a este método de nuevo para modificar la configuración de las ventanas secundarias. Llame al método con bEnable
establecido en TRUE
y modifique los miembros del objeto CMDITabInfo
especificados por el parámetro params
.
Para más información sobre cómo usar los grupos con fichas de MDI, vea Grupos con fichas de MDI.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa EnableMDITabbedGroups
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
CMDITabInfo mdiTabParams;
mdiTabParams.m_bTabCustomTooltips = TRUE;
if (bMDITabsVS2005Look)
{
mdiTabParams.m_style = CMFCTabCtrl::STYLE_3D_VS2005;
mdiTabParams.m_bDocumentMenu = TRUE;
}
else if (bOneNoteTabs)
{
mdiTabParams.m_style = CMFCTabCtrl::STYLE_3D_ONENOTE;
mdiTabParams.m_bAutoColor = bMDITabColors;
}
if (bActiveTabCloseButton)
{
mdiTabParams.m_bTabCloseButton = FALSE;
mdiTabParams.m_bActiveTabCloseButton = TRUE;
}
EnableMDITabbedGroups(TRUE, mdiTabParams);
CMDIFrameWndEx::EnableMDITabs
Habilita o deshabilita la característica Fichas de MDI para la ventana de marco MDI. Cuando está habilitada, la ventana de marco muestra una ficha para cada ventana secundaria MDI.
void EnableMDITabs(
BOOL bEnable=TRUE,
BOOL bIcons=TRUE,
CMFCTabCtrl::Location tabLocation=CMFCTabCtrl::LOCATION_BOTTOM,
BOOL bTabCloseButton=FALSE,
CMFCTabCtrl::Style style=CMFCTabCtrl::STYLE_3D_SCROLLED,
BOOL bTabCustomTooltips=FALSE,
BOOL bActiveTabCloseButton=FALSE);
Parámetros
bEnable
Especifica si las fichas están habilitadas.
bIcons
Especifica si se deben mostrar iconos en las fichas.
tabLocation
Especifica la ubicación de las etiquetas de las fichas.
bTabCloseButton
Especifica si se muestran los botones de cierre de fichas.
style
Especifica el estilo de las fichas. Use STYLE_3D_SCROLLED
para las fichas normales o STYLE_3D_ONENOTE
para las fichas de Microsoft OneNote.
bTabCustomTooltips
Especifica si la información sobre herramientas personalizada está habilitada.
bActiveTabCloseButton
Si es TRUE
, se mostrará un botón Cerrar en la ficha activa en lugar de en la esquina derecha del área de fichas.
Comentarios
Llame a este método para habilitar o deshabilitar la característica Fichas de MDI para la ventana de marco MDI. Cuando está habilitada, todas las ventanas secundarias se muestran como fichas.
Las etiquetas de ficha se pueden ubicar en la parte superior o inferior del marco, según el valor del parámetro tabLocation
. Puede especificar CMFCTabCtrl::LOCATION_BOTTOM
(la configuración predeterminada) o CMFCTabCtrl::LOCATION_TOP
.
Si bTabCustomTooltips
es TRUE
, se enviará un mensaje AFX_WM_ON_GET_TAB_TOOLTIP
a la ventana de marco principal. El código puede controlar este mensaje y proporcionar al marco información sobre herramientas personalizada para las fichas de MDI.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa EnableMDITabs
en Ejemplo de MDITabsDemo: aplicación MDI con fichas de MFC.
void CMainFrame::UpdateMDITabs(BOOL bResetMDIChild)
{
CMDITabInfo params;
HWND hwndActive = NULL;
switch (theApp.m_Options.m_nMDITabsType)
{
case CMDITabOptions::None:
{
BOOL bCascadeMDIChild = FALSE;
if (IsMDITabbedGroup())
{
EnableMDITabbedGroups(FALSE, params);
bCascadeMDIChild = TRUE;
}
else if (AreMDITabs())
{
EnableMDITabs(FALSE);
bCascadeMDIChild = TRUE;
}
if (bCascadeMDIChild)
{
// CMDIClientAreaWnd m_wndClientArea
hwndActive = (HWND)m_wndClientArea.SendMessage(WM_MDIGETACTIVE);
m_wndClientArea.PostMessage(WM_MDICASCADE);
m_wndClientArea.UpdateTabs(false);
m_wndClientArea.SetActiveTab(hwndActive);
::BringWindowToTop(hwndActive);
}
}
break;
case CMDITabOptions::MDITabsStandard:
hwndActive = (HWND)m_wndClientArea.SendMessage(WM_MDIGETACTIVE);
m_wndClientArea.PostMessage(WM_MDIMAXIMIZE, LPARAM(hwndActive), 0L);
::BringWindowToTop(hwndActive);
EnableMDITabs(TRUE, theApp.m_Options.m_bMDITabsIcons, theApp.m_Options.m_bTabsOnTop ? CMFCTabCtrl::LOCATION_TOP : CMFCTabCtrl::LOCATION_BOTTOM, theApp.m_Options.m_nTabsStyle);
GetMDITabs().EnableAutoColor(theApp.m_Options.m_bTabsAutoColor);
GetMDITabs().EnableTabDocumentsMenu(theApp.m_Options.m_bMDITabsDocMenu);
GetMDITabs().EnableTabSwap(theApp.m_Options.m_bDragMDITabs);
GetMDITabs().SetTabBorderSize(theApp.m_Options.m_nMDITabsBorderSize);
GetMDITabs().SetFlatFrame(theApp.m_Options.m_bFlatFrame);
GetMDITabs().EnableCustomToolTips(theApp.m_Options.m_bCustomTooltips);
GetMDITabs().EnableCustomToolTips(theApp.m_Options.m_bCustomTooltips);
GetMDITabs().EnableActiveTabCloseButton(theApp.m_Options.m_bActiveTabCloseButton);
break;
CMDIFrameWndEx::EnableMDITabsLastActiveActivation
Especifica si se debe abrir la última ficha activa cuando el usuario cierra la ficha actual.
void EnableMDITabsLastActiveActivation(BOOL bLastActiveTab=TRUE);
Parámetros
bLastActiveTab
[in] Si es TRUE
, habilita la activación de la última ficha activa. Si es FALSE
, deshabilita la activación de la última ficha activa.
Comentarios
Hay dos maneras de abrir una ficha cuando se cierra la ficha activa:
- Activar la ficha siguiente.
- Activar la ficha activa anteriormente.
La implementación predeterminada usa la primera manera.
Use EnableMDITabsLastActiveActivation
para habilitar la segunda forma de activación de fichas. Emula la forma en que Windows abre las ventanas secundarias MDI.
CMDIFrameWndEx::EnablePaneMenu
Habilita o deshabilita la creación y administración automáticas del menú del panel emergente, que muestra una lista de paneles de aplicaciones.
void EnablePaneMenu(
BOOL bEnable,
UINT uiCustomizeCmd,
const CString& strCustomizeLabel,
UINT uiViewToolbarsMenuEntryID,
BOOL bContextMenuShowsToolbarsOnly=FALSE,
BOOL bViewMenuShowsToolbarsOnly=FALSE);
Parámetros
bEnable
[in] Si es TRUE
, el control automático del menú del panel está habilitado; si es FALSE
, el control automático está deshabilitado.
uiCustomizeCmd
[in] Id. de comando del elemento de menú Personalizar. Este elemento de menú normalmente se agrega al final de la lista de paneles.
strCustomizeLabel
[in] Texto que se va a mostrar para el elemento de menú Personalizar (para la localización).
uiViewToolbarsMenuEntryID
[in] Especifica el id. de un elemento de menú de la barra de herramientas que abre el menú del panel. Normalmente se trata del submenú Barras de herramientas del menú Ver.
bContextMenuShowsToolbarsOnly
[in] Si es TRUE
, en el menú del panel se muestra solo una lista de barras de herramientas. Si es FALSE
, en el menú se muestra una lista de barras de herramientas y barras de acoplamiento.
bViewMenuShowsToolbarsOnly
[in] Si es TRUE
, en el menú del panel se muestra solo una lista de barras de herramientas. Si es FALSE
, en el menú se muestra una lista de barras de herramientas y barras de acoplamiento.
Comentarios
En el menú del panel emergente se muestra la lista de paneles de la aplicación y permite al usuario mostrar u ocultar paneles individuales.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa EnablePaneMenu
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
// Enable pane context menu(list of bars + customize command):
EnablePaneMenu(TRUE, ID_VIEW_CUSTOMIZE, _T("Customize..."), ID_VIEW_TOOLBARS, FALSE, TRUE);
CMDIFrameWndEx::EnableWindowsDialog
Inserta un elemento de menú cuyo id. de comando llama a un cuadro de diálogo CMFCWindowsManagerDialog
.
void EnableWindowsDialog(
UINT uiMenuId,
LPCTSTR lpszMenuText,
BOOL bShowAllways=FALSE,
BOOL bShowHelpButton=FALSE);
void EnableWindowsDialog(
UINT uiMenuId,
UINT uiMenuTextResId,
BOOL bShowAllways=FALSE,
BOOL bShowHelpButton=FALSE);
Parámetros
uiMenuId
[in] Especifica el id. de recurso de un menú.
lpszMenuText
[in] Especifica el texto del elemento.
bShowHelpButton
[in] Especifica si se va a mostrar un botón Ayuda en el cuadro de diálogo administración de ventanas.
uiMenuTextResId
[in] Identificador de recurso de cadena que contiene la cadena de texto del elemento.
Comentarios
Use este método para insertar un elemento de menú cuyo comando llama a un cuadro de diálogo de administración de ventanas secundarias MDI (clase CMFCWindowsManagerDialog
). El nuevo elemento se inserta en el menú especificado por uiMenuId
. Llame a EnableWindowsDialog
al procesar el mensaje WM_CREATE
.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa EnableWindowsDialog
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
// Enable windows manager:
EnableWindowsDialog(ID_WINDOW_MANAGER, _T("Windows..."), TRUE);
CMDIFrameWndEx::GetActivePopup
Devuelve un puntero al menú emergente mostrado actualmente.
CMFCPopupMenu* GetActivePopup() const;
Valor devuelto
Puntero al menú emergente activo; NULL
si no hay ningún menú emergente activo.
Comentarios
Use esta función para obtener un puntero al objeto de clase CMFCPopupMenu
que se muestra actualmente.
CMDIFrameWndEx::GetDefaultResId
Devuelve el id. de los recursos compartidos de la ventana de marco MDI.
UINT GetDefaultResId() const;
Valor devuelto
Valor de id. de recurso. 0 si la ventana de marco no tiene ninguna barra de menús.
Comentarios
Este método devuelve el id. de recurso que se especificó cuando la ventana de marco MDI se cargó mediante CFrameWnd::LoadFrame
.
CMDIFrameWndEx::GetMDITabGroups
Devuelve una lista de ventanas con fichas de MDI.
const CObList& GetMDITabGroups() const;
Valor devuelto
Referencia a un objeto de clase CObList
que contiene una lista de ventanas con fichas. No almacene ni modifique la lista.
Comentarios
Use este método para acceder a la lista de ventanas con fichas. Puede resultar útil si quiere cambiar o consultar algunos parámetros de ventanas con fichas individuales.
CMDIFrameWndEx::GetMDITabs
Devuelve una referencia a la ventana con fichas subrayada.
CMFCTabCtrl& GetMDITabs();
Valor devuelto
Referencia a la ventana con fichas subrayada.
CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems
Devuelve una combinación de marcas que determina qué operaciones son válidas cuando la característica Grupos con fichas de MDI está habilitada.
DWORD GetMDITabsContextMenuAllowedItems();
Valor devuelto
Combinación "or" bit a bit (|
) de las marcas siguientes:
AFX_MDI_CREATE_VERT_GROUP
: puede crear un grupo de fichas vertical.AFX_MDI_CREATE_HORZ_GROUP
: puede crear un grupo de fichas horizontal.AFX_MDI_CAN_MOVE_PREV
: puede mover una ficha al grupo de fichas anterior.AFX_MDI_CAN_MOVE_NEXT
: puede mover una ficha al grupo de fichas siguiente.
Comentarios
Cuando la característica Grupos con fichas de MDI está habilitada, debe saber qué operaciones se permiten en las fichas de una ventana determinada. Este método analiza el diseño actual de ventanas con fichas y devuelve una combinación de marcas que se pueden usar para compilar, por ejemplo, un menú contextual.
Puede crear un nuevo grupo de fichas verticales cuando todas las ventanas con fichas se alinean verticalmente o cuando solo hay una ventana con fichas.
Puede crear un nuevo grupo de fichas horizontales cuando todas las ventanas con fichas se alinean horizontalmente o cuando solo hay una ventana con fichas.
Puede mover una ficha al grupo anterior solo si hay más de una ficha en una ventana con fichas.
Puede mover una ficha al grupo siguiente solo si hay más de una ficha en una ventana con fichas.
CMDIFrameWndEx::GetMenuBar
Devuelve un puntero al objeto de barra de menús asociado a la ventana de marco.
const CMFCMenuBar* GetMenuBar() const;
Valor devuelto
Puntero a un objeto de barra de menús.
CMDIFrameWndEx::GetPane
Devuelve un puntero al panel que tiene el id. de control especificado.
CBasePane* GetPane(UINT nID);
Parámetros
nID
[in] La id. del control.
Valor devuelto
Puntero al panel que tiene el id. de control especificado, si existe. En caso contrario, es NULL
.
CMDIFrameWndEx::GetRibbonBar
Recupera el control de barra de la cinta de opciones para el marco.
CMFCRibbonBar* GetRibbonBar();
Valor devuelto
Puntero a la clase CMFCRibbonBar
para el marco.
Comentarios
CMDIFrameWndEx::GetTearOffBars
Devuelve una lista de menús desprendibles.
const CObList& GetTearOffBars() const;
Valor devuelto
Referencia a un objeto de clase CObList
que contiene una colección de punteros a objetos derivados de CPane
que están en estado desprendible.
Comentarios
CMDIFrameWndEx
mantiene una colección de menús desprendibles. Use este método para recuperar una referencia a esta lista.
CMDIFrameWndEx::GetToolbarButtonToolTipText
Llamado por el marco cuando la aplicación muestra la información sobre herramientas de un botón de la barra de herramientas.
virtual BOOL GetToolbarButtonToolTipText(
CMFCToolBarButton* pButton,
CString& strTTText);
Parámetros
pButton
[in] Puntero a un botón de la barra de herramientas.
strTTText
[in] Texto de la información sobre herramientas para el botón.
Valor devuelto
TRUE
si se ha mostrado la información sobre herramientas. De lo contrario, FALSE
.
Comentarios
CMDIFrameWndEx::InsertPane
Registra el panel especificado con el administrador de acoplamiento.
BOOL InsertPane(
CBasePane* pControlBar,
CBasePane* pTarget,
BOOL bAfter=TRUE);
Parámetros
pControlBar
[in] Puntero al panel que se va a insertar.
pTarget
[in] Puntero al panel antes o después del cual se va a insertar el panel.
bAfter
[in] Si es TRUE
, pControlBar
se inserta después de pTarget
. Si es FALSE
, pControlBar
se inserta antes de pTarget
.
Valor devuelto
TRUE
si el método registra correctamente el panel, FALSE
si el panel ya estaba registrado con el administrador de acoplamiento.
Comentarios
Use este método para indicar al administrador de acoplamiento sobre un panel especificado por pControlBar
. El administrador de acoplamiento alineará este panel según la alineación y la posición del panel en la lista interna del administrador de acoplamiento.
CMDIFrameWndEx::IsFullScreen
Determina si la ventana de marco está en modo de pantalla completa.
BOOL IsFullScreen() const;
Valor devuelto
TRUE
si la ventana de marco está en modo de pantalla completa; de lo contrario, FALSE
.
Comentarios
Puede establecer el modo de pantalla completa llamando al método CMDIFrameWndEx::EnableFullScreenMode
.
CMDIFrameWndEx::IsMDITabbedGroup
Especifica si la característica Grupos con fichas de MDI está habilitada.
BOOL IsMDITabbedGroup() const;
Valor devuelto
TRUE
si la característica Grupos con fichas de MDI está habilitada; de lo contrario, FALSE
.
Comentarios
Para determinar si la característica normal Fichas de MDI o Grupos con fichas de MDI está habilitada, use CMDIFrameWndEx::AreMDITabs
.
CMDIFrameWndEx::IsMemberOfMDITabGroup
Determina si la ventana con fichas especificada está en la lista de ventanas que se encuentran en Grupos con fichas de MDI.
BOOL IsMemberOfMDITabGroup(CWnd* pWnd);
Parámetros
pWnd
[in] Puntero a la ventana con fichas.
Valor devuelto
TRUE
si la ventana con fichas especificada está en la lista de ventanas con fichas que forman Grupos con fichas de MDI. De lo contrario, FALSE
es .
CMDIFrameWndEx::IsMenuBarAvailable
Determina si la ventana de marco tiene una barra de menús.
BOOL IsMenuBarAvailable() const;
Valor devuelto
TRUE
si el puntero al objeto de barra de menús no es NULL
; de lo contrario, FALSE
.
CMDIFrameWndEx::IsPointNearDockSite
Determina si un punto especificado está cerca del sitio de acoplamiento.
BOOL IsPointNearDockSite(
CPoint point,
DWORD& dwBarAlignment,
BOOL& bOuterEdge) const;
Parámetros
point
[in] Punto especificado en coordenadas de pantalla.
dwBarAlignment
[in] Especifica el borde que está cerca del punto. Los valores posibles son CBRS_ALIGN_LEFT
, CBRS_ALIGN_RIGHT
, CBRS_ALIGN_TOP
y CBRS_ALIGN_BOTTOM
.
bOuterEdge
[in] TRUE
si el punto está cerca del borde exterior del sitio de acoplamiento; FALSE
, de lo contrario.
Valor devuelto
TRUE
si el punto está cerca del sitio de acoplamiento; de lo contrario, FALSE
.
Comentarios
El punto está cerca del sitio de acoplamiento cuando se encuentra dentro del conjunto de sensibilidad en el administrador de acoplamiento. La sensibilidad predeterminada es de 15 píxeles.
CMDIFrameWndEx::IsPrintPreview
Determina si la ventana de marco está en modo de vista previa de impresión.
BOOL IsPrintPreview();
Valor devuelto
TRUE
si la ventana de marco está en modo de vista previa de impresión; de lo contrario, FALSE
.
Comentarios
CMDIFrameWndEx::LoadFrame
Crea una ventana de marco a partir de la información de recursos.
virtual BOOL LoadFrame(
UINT nIDResource,
DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
CWnd* pParentWnd = NULL,
CCreateContext* pContext = NULL);
Parámetros
nIDResource
[in] Id. de un recurso compartido asociado a la ventana de marco.
dwDefaultStyle
[in] Estilo de la ventana de marco.
pParentWnd
[in] Puntero al elemento primario del marco.
pContext
[in] Puntero a una estructura CCreateContext
. Este parámetro puede ser NULL
.
Valor devuelto
TRUE
si el método se ejecuta correctamente; de lo contrario, FALSE
.
CMDIFrameWndEx::LoadMDIState
Carga el diseño especificado de Grupos con fichas de MDI y la lista de documentos abiertos previamente.
virtual BOOL LoadMDIState(LPCTSTR lpszProfileName);
Parámetros
lpszProfileName
[in] Especifica el nombre del perfil.
Valor devuelto
TRUE
si la carga se realizó correctamente; FALSE
si se produjo un error en la carga o no hay datos que cargar.
Comentarios
Para cargar o guardar el estado de las fichas y grupos de MDI y la lista de documentos abiertos, haga lo siguiente:
- Llame a
CMDIFrameWndEx::SaveMDIState
al cerrar el marco principal. - Llame a
CMDIFrameWndEx::LoadMDIState
al crear el marco principal. El lugar recomendado para esta llamada es antes de que se muestre el marco principal por primera vez. AgregueCWinAppEx::EnableLoadWindowPlacement
(FALSE);
antespMainFrame->LoadFrame (IDR_MAINFRAME);.
de Agregar(pMainFrame);
CWinAppEx::ReloadWindowPlacement
después de la llamada aLoadMDIState
para mostrar el marco principal en la posición almacenada en el Registro. - Invalide
GetDocumentName
en la clase derivada deCMDIChildWndEx
si la aplicación muestra documentos que no están almacenados como archivos. La cadena devuelta se guardará en el registro como el identificador del documento. La implementación base deCMDIChildWndEx::GetDocumentName
devuelve un valor obtenido deCDocument::GetPathName
. - Invalide
CMDIFrameWndEx::CreateDocumentWindow
para crear correctamente documentos cuando se cargan desde el registro. El primer parámetro es la cadena queGetDocumentName
ha devuelto.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa LoadMDIState
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
// Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
if (cmdInfo.m_nShellCommand == CCommandLineInfo::FileNew)
{
if (!pMainFrame->LoadMDIState(GetRegSectionPath()))
{
m_pStartDocTemplate->OpenDocumentFile(NULL);
}
}
else
{
// Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdInfo))
{
return FALSE;
}
}
CMDIFrameWndEx::MDITabMoveToNextGroup
Mueve la ficha activa de la ventana con fichas activa actualmente al grupo con fichas siguiente o anterior.
void MDITabMoveToNextGroup(BOOL bNext=TRUE);
Parámetros
bNext
[in] Si es TRUE
, se mueve la ficha al siguiente grupo con fichas. Si es FALSE
, se mueve al grupo con fichas anterior.
CMDIFrameWndEx::MDITabNewGroup
Crea un nuevo grupo con fichas que tiene una sola ventana.
void MDITabNewGroup(BOOL bVert=TRUE);
Parámetros
bVert
[in] Especifica la alineación del grupo nuevo. Si es TRUE
, el nuevo grupo se alinea verticalmente. Si es FALSE
, el nuevo grupo se alinea horizontalmente.
Comentarios
Use esta función para crear una nueva ventana con fichas (nuevo grupo con fichas) y agregarle la primera ficha.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa MDITabNewGroup
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
void CMainFrame::OnMdiNewHorzTabGroup()
{
MDITabNewGroup(FALSE);
}
CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild
Especifica si los paneles de acoplamiento se pueden convertir en ventanas secundarias MDI.
BOOL m_bCanConvertControlBarToMDIChild;
Comentarios
Indica si las barras de control de acoplamiento se pueden convertir en ventanas secundarias MDI. Si esta marca es TRUE
, el marco controla la conversión automáticamente cuando el usuario selecciona el comando Organización por fichas. La marca está protegida y debe habilitar explícitamente esta opción estableciendo m_bCanConvertControlBarToMDIChild
en un constructor de una clase derivada de CMDIFrameWndEx
o invalidando CanConvertControlBarToMDIChild
.
El valor predeterminado es FALSE
.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa m_bCanConvertControlBarToMDIChild
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
CMainFrame::CMainFrame()
{
CMFCPopupMenu::SetForceShadow(TRUE);
m_bCanConvertControlBarToMDIChild = TRUE;
}
CMDIFrameWndEx::m_bDisableSetRedraw
Habilita o deshabilita la optimización de volver a dibujar para las ventanas secundarias MDI.
AFX_IMPORT_DATA static BOOL m_bDisableSetRedraw;
Comentarios
El valor predeterminado es TRUE
.
Establezca esta marca en FALSE
si quiere optimizar el volver a dibujar elementos secundarios MDI. En este caso, el marco llamará a SetRedraw (FALSE)
para el marco principal cuando la aplicación cambie la ficha activa.
Esta marca puede causar efectos no deseados (como aplicaciones en segundo plano que se vuelven visibles). Por lo tanto, se recomienda cambiar el valor predeterminado solo si experimenta un parpadeo notable durante la activación de la ficha de MDI.
CMDIFrameWndEx::NegotiateBorderSpace
Negocia el espacio de borde en una ventana de marco durante la activación en contexto de OLE.
virtual BOOL NegotiateBorderSpace(
UINT nBorderCmd,
LPRECT lpRectBorder);
Parámetros
nBorderCmd
[in] Contiene uno de los siguientes valores de la enumeración CFrameWnd::BorderCmd
:
borderGet
= 1borderRequest
= 2borderSet
= 3
lpRectBorder
[in, out] Puntero a un objeto de estructura RECT
o clase CRect
que especifica las coordenadas del borde.
Valor devuelto
Distinto de cero si el método se realizó correctamente. En caso contrario, 0.
Comentarios
Este método es una implementación de la negociación del espacio de borde OLE.
CMDIFrameWndEx::OnCloseDockingPane
Lo llama el marco cuando el usuario hace clic en el botón Cerrar en un panel acoplable.
virtual BOOL OnCloseDockingPane(CDockablePane* pWnd);
Parámetros
pWnd
[in] Puntero al panel que se está cerrando.
Valor devuelto
TRUE
si se puede cerrar el panel de acoplamiento. En caso contrario, es FALSE
.
Comentarios
Invalide este método para controlar la ocultación de paneles de acoplamiento. Devuelva FALSE
si quiere evitar que un panel de acoplamiento se oculte.
La implementación predeterminada no hace nada y devuelve TRUE
.
CMDIFrameWndEx::OnCloseMiniFrame
Lo llama el marco cuando el usuario hace clic en el botón Cerrar en una ventana minimarco flotante.
virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);
Parámetros
pWnd
[in] Puntero a la ventana minimarco que se está cerrando.
Valor devuelto
TRUE
si se puede cerrar la ventana minimarco flotante. En caso contrario, es FALSE
.
Comentarios
Invalide este método para controlar la ocultación de ventanas minimarco flotantes. Devuelva FALSE
si quiere evitar que se oculte una ventana minimarco flotante.
La implementación predeterminada no hace nada y devuelve TRUE
.
CMDIFrameWndEx::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 a un menú emergente.
Comentarios
Invalide este método si quiere procesar notificaciones de objetos de clase CMFCPopupMenu
que pertenecen a la ventana de marco MDI cuando esos objetos procesan mensajes WM_DESTROY
.
CMDIFrameWndEx::OnCmdMsg
Lo llama el marco para enrutar y enviar mensajes de comando y actualizar objetos de interfaz de usuario de comandos.
virtual BOOL OnCmdMsg(
UINT nID,
int nCode,
void* pExtra,
AFX_CMDHANDLERINFO* pHandlerInfo);
Parámetros
nID
[in] Identificador del comando.
nCode
[in] Identifica el código de notificación del comando. Consulte CCmdTarget::OnCmdMsg
para más información sobre los valores para nCode
.
pExtra
[in] Se usa según el valor de nCode
. Para obtener más información sobre pExtra
, vea CCmdTarget::OnCmdMsg
.
pHandlerInfo
[in, put] Normalmente, este parámetro debería ser NULL
. Si no es NULL
, OnCmdMsg
rellena los miembros pTarget
y pmf
de la estructura pHandlerInfo
en lugar de enviar el comando.
Valor devuelto
Distinto de cero si se controla el mensaje; en caso contrario, es 0.
CMDIFrameWndEx::OnDrawMenuImage
Lo llama el marco de trabajo 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 a un contexto de dispositivo.
pMenuButton
[in] Puntero al botón del menú.
rectImage
[in] Rectángulo delimitador de la imagen.
Valor devuelto
TRUE
si el método dibuja la imagen. La implementación predeterminada devuelve FALSE
.
Comentarios
Invalide este método si desea personalizar la representación de imágenes para los elementos de menú que pertenecen a la barra de menús propiedad del objeto derivado de CMDIFrameWndEx
. La implementación predeterminada no hace nada.
CMDIFrameWndEx::OnDrawMenuLogo
Lo llama el marco cuando un objeto CMFCPopupMenu
procesa un mensaje WM_PAINT
.
virtual void OnDrawMenuLogo(
CDC*,
CMFCPopupMenu*,
const CRect&);
Comentarios
Invalide esta función para mostrar un logotipo en el menú emergente que pertenece a la barra de menús propiedad del objeto derivado de CMDIFrameWndEx
. La implementación predeterminada no hace nada.
CMDIFrameWndEx::OnEraseMDIClientBackground
Lo llama el marco cuando la ventana de marco MDI procesa un mensaje WM_ERASEBKGND
.
virtual BOOL OnEraseMDIClientBackground(CDC*);
Valor devuelto
TRUE
si la aplicación procesa el mensaje y borra el fondo.
Comentarios
Invalide esta función miembro si desea procesar el mensaje WM_ERASEBKGND
en una clase derivada de CMDIFrameWndEx
.
CMDIFrameWndEx::OnMenuButtonToolHitTest
Llamado por el marco cuando un objeto CMFCToolBarButton
procesa un mensaje WM_NCHITTEST
.
virtual BOOL OnMenuButtonToolHitTest(
CMFCToolBarButton* pButton,
TOOLINFO* pTI);
Parámetros
pButton
[in] Botón de la barra de herramientas.
pTI
[out] Puntero a una estructura TOOLINFO
.
Valor devuelto
TRUE
si la aplicación rellena el parámetro pTI
. La implementación predeterminada devuelve FALSE
.
Comentarios
Invalide este método si quiere proporcionar información sobre elementos de menú específicos a una información sobre herramientas. La implementación predeterminada no hace nada.
CMDIFrameWndEx::OnMoveMiniFrame
El marco llama a este método para mover una ventana minimarco.
virtual BOOL OnMoveMiniFrame(CWnd* pFrame);
Parámetros
pFrame
[in] Puntero a una ventana minimarco.
Valor devuelto
TRUE
si el método se ejecuta correctamente; de lo contrario, FALSE
.
CMDIFrameWndEx::OnSetPreviewMode
Establece el modo de vista previa de impresión de la ventana de marco principal de la aplicación.
virtual void OnSetPreviewMode(
BOOL bPreview,
CPrintPreviewState* pState);
Parámetros
bPreview
[in] Si es TRUE
, establece el modo de vista previa de impresión. Si es FALSE
, cancela el modo de vista previa.
pState
[in] Puntero a una estructura CPrintPreviewState
.
Comentarios
Este método invalida CFrameWnd::OnSetPreviewMode
.
CMDIFrameWndEx::OnShowCustomizePane
Lo llama el marco cuando se activa un panel Personalización rápida.
virtual BOOL OnShowCustomizePane(
CMFCPopupMenu* pMenuPane,
UINT uiToolbarID);
Parámetros
pMenuPane
[in] Puntero al panel Personalización rápida.
uiToolbarID
[in] Id. de control de la barra de herramientas que se va a personalizar.
Valor devuelto
Este método devuelve siempre TRUE
.
Comentarios
El panel Personalización rápida es un menú que se abre cuando el usuario hace clic en Personalizar en una barra de herramientas.
Invalide este método en una clase derivada para realizar cambios en el panel Personalización rápida.
CMDIFrameWndEx::OnShowMDITabContextMenu
Lo llama el marco antes de que se muestre un menú contextual en una de las fichas. Válido solo para Grupos con fichas de MDI.
virtual BOOL OnShowMDITabContextMenu(
CPoint point,
DWORD dwAllowedItems,
BOOL bTabDrop);
Parámetros
point
[in] Ubicación del menú en coordenadas de pantalla.
dwAllowedItems
[in] Combinación "or" bit a bit (|
) de marcas que indica qué acciones se permiten para la ficha actual:
AFX_MDI_CREATE_VERT_GROUP
: puede crear un grupo de fichas vertical.AFX_MDI_CREATE_HORZ_GROUP
: puede crear un grupo de fichas horizontal.AFX_MDI_CAN_MOVE_PREV
: puede mover una ficha al grupo de fichas anterior.AFX_MDI_CAN_MOVE_NEXT
: puede mover una ficha al grupo de fichas siguiente.AFX_MDI_CAN_BE_DOCKED
: cambia un documento con fichas al estado acoplado (pertinente solo para documentos con fichas).
bTabDrop
[in] TRUE
para mostrar el menú como resultado de arrastrar la ficha a otro grupo con fichas. FALSE
para mostrar el menú como un menú contextual en la ficha activa actualmente.
Valor devuelto
Invalide este método en una clase derivada de CMDIFrameWndEx
.
Comentarios
Si no procesa OnShowMDITabContextMenu
, no se mostrará el menú contextual. El Asistente para aplicaciones MFC genera esta función al habilitar la característica Grupos con fichas de MDI.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa OnShowMDITabContextMenu
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
BOOL CMainFrame::OnShowMDITabContextMenu(CPoint point, DWORD dwAllowedItems, BOOL bDrop)
{
CMenu menu;
VERIFY(menu.LoadMenu(bDrop ? IDR_POPUP_DROP_MDITABS : IDR_POPUP_MDITABS));
CMenu* pPopup = menu.GetSubMenu(0);
ASSERT(pPopup != NULL);
if ((dwAllowedItems & AFX_MDI_CREATE_HORZ_GROUP) == 0)
{
pPopup->DeleteMenu(ID_MDI_NEW_HORZ_TAB_GROUP, MF_BYCOMMAND);
}
if ((dwAllowedItems & AFX_MDI_CREATE_VERT_GROUP) == 0)
{
pPopup->DeleteMenu(ID_MDI_NEW_VERT_GROUP, MF_BYCOMMAND);
}
if ((dwAllowedItems & AFX_MDI_CAN_MOVE_NEXT) == 0)
{
pPopup->DeleteMenu(ID_MDI_MOVE_TO_NEXT_GROUP, MF_BYCOMMAND);
}
if ((dwAllowedItems & AFX_MDI_CAN_MOVE_PREV) == 0)
{
pPopup->DeleteMenu(ID_MDI_MOVE_TO_PREV_GROUP, MF_BYCOMMAND);
}
if ((dwAllowedItems & AFX_MDI_CAN_BE_DOCKED) == 0)
{
pPopup->DeleteMenu(ID_MDI_TABBED_DOCUMENT, MF_BYCOMMAND);
}
CMFCPopupMenu* pPopupMenu = new CMFCPopupMenu;
pPopupMenu->SetAutoDestroy(FALSE);
pPopupMenu->Create(this, point.x, point.y, pPopup->GetSafeHmenu());
return TRUE;
}
CMDIFrameWndEx::OnShowPanes
Llamado por el marco para mostrar u ocultar paneles.
virtual BOOL OnShowPanes(BOOL bShow);
Parámetros
bShow
[in] TRUE
para mostrar paneles, FALSE
para ocultar paneles.
Valor devuelto
TRUE
si el estado de los paneles cambia como resultado de llamar a este método, FALSE
si los paneles ya están en el estado especificado por bShow
. Por ejemplo, si los paneles están ocultos y bShow
es FALSE
, el valor devuelto es FALSE
.
Comentarios
La implementación predeterminada quita la barra de herramientas de la ventana de marco de nivel superior.
Si CDockingManager::m_bHideDockingBarsInContainerMode
es TRUE
(valor predeterminado), se ocultarán todos los paneles de acoplamiento.
CMDIFrameWndEx::OnShowPopupMenu
Lo llama el marco cuando abre un menú emergente.
virtual BOOL OnShowPopupMenu(CMFCPopupMenu*);
Valor devuelto
TRUE
si se va a mostrar el menú emergente. En caso contrario, es FALSE
. La implementación predeterminada devuelve TRUE
.
Comentarios
Invalide este método si quiere implementar un procesamiento especial tras la activación del menú emergente. Por ejemplo, si quiere cambiar elementos de menú normales a botones de menú de colores, configure barras desprendibles, etc.
La implementación predeterminada no hace nada.
CMDIFrameWndEx::OnSizeMDIClient
Lo llama el marco cuando cambia el tamaño de la ventana MDI del cliente.
virtual void OnSizeMDIClient(
const CRect& rectOld,
const CRect& rectNew);
Parámetros
rectOld
[in] Tamaño actual de la ventana del cliente MDI.
rectNew
[in] Nuevo tamaño de la ventana del cliente MDI.
Comentarios
CMDIFrameWndEx::OnTearOffMenu
Lo llama el marco de trabajo cuando se activa un menú con barra desplazable.
virtual BOOL OnTearOffMenu(
CMFCPopupMenu* pMenuPopup,
CPane* pBar);
Parámetros
pMenuPopup
[in] Puntero al menú emergente.
pBar
[in] Puntero a la barra desprendible.
Valor devuelto
TRUE
para permitir que el menú emergente con la barra desprendible se active; de lo contrario, FALSE
. El valor predeterminado es TRUE
.
Comentarios
Invalide esta función cuando quiera implementar una configuración especial para la barra desprendible. La implementación predeterminada no hace nada.
CMDIFrameWndEx::OnUpdateFrameMenu
Lo llama el marco para actualizar el menú de marco.
virtual void OnUpdateFrameMenu(HMENU hMenuAlt);
Parámetros
hMenuAlt
[in] Un identificador de un menú.
CMDIFrameWndEx::PaneFromPoint
Devuelve el panel de acoplamiento que contiene el punto especificado.
CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
bool bExactBar,
CRuntimeClass* pRTCBarType) const;
CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
DWORD& dwAlignment,
CRuntimeClass* pRTCBarType) const;
Parámetros
point
[in] Punto (en coordenadas de pantalla).
nSensitivity
[in] El rectángulo de ventana de cada panel activado se amplía en todas las direcciones según este valor.
bExactBar
[in] Si es TRUE
, se omite el parámetro nSensitivity
.
pRTCBarType
[in] Si no es NULL
, el método itera solo los paneles del tipo especificado.
dwAlignment
[out] Si se encuentra un panel, este parámetro especificará el lado del panel más cercano al punto especificado.
Valor devuelto
Puntero a un panel de acoplamiento o NULL
si ningún control contiene el punto especificado por point
.
Comentarios
La llamada se redirige a la clase CDockingManager
. Para obtener más información, vea CDockingManager::ControlBarFromPoint
.
CMDIFrameWndEx::RecalcLayout
Lo llama el marco para volver a calcular el diseño de la ventana de marco.
virtual void RecalcLayout(BOOL bNotify = TRUE);
Parámetros
bNotify
[in] Determina si el elemento activo en contexto de la ventana de marco recibe la notificación del cambio de diseño. Si es TRUE
, se notifica al elemento; de lo contrario, FALSE
.
Comentarios
Este método invalida CFrameWnd::RecalcLayout.
CMDIFrameWndEx::RemovePaneFromDockManager
Anula el registro de un panel y lo quita del administrador de acoplamiento.
void RemovePaneFromDockManager(
CBasePane* pControlBar,
BOOL bDestroy,
BOOL bAdjustLayout,
BOOL bAutoHide,
CBasePane* pBarReplacement);
Parámetros
pControlBar
[in] Puntero a un panel que se va a quitar.
bDestroy
[in] TRUE
para destruir el panel quitado. FALSE
para no destruirlo.
bAdjustLayout
[in] TRUE
para ajustar el diseño de acoplamiento inmediatamente. Si es FALSE
, el ajuste solo se producirá cuando se produzca un evento de volver a dibujar por otros motivos (el usuario cambia el tamaño de la ventana, arrastra el marco principal, etc.).
bAutoHide
[in] TRUE
para quitar el panel de la lista de paneles de ocultación automática. FALSE
para quitar el panel de la lista de paneles normales.
pBarReplacement
[in] Puntero a un panel que reemplaza al panel quitado.
Comentarios
Debe registrar cada panel con el administrador de acoplamiento para participar en el diseño de acoplamiento. Use CMDIFrameWndEx::AddPane
o CMDIFrameWndEx::InsertPane
para registrar paneles.
Use este método cuando un panel ya no forme parte del diseño de acoplamiento de la ventana de marco.
CMDIFrameWndEx::SaveMDIState
Guarda el diseño de Grupos con fichas de MDI y la lista de documentos abiertos previamente.
virtual BOOL SaveMDIState(LPCTSTR lpszProfileName);
Parámetros
lpszProfileName
[in] Especifica el nombre del perfil.
Valor devuelto
TRUE
si la operación de guardar se realizó correctamente; FALSE
si se produjo un error al guardar.
Comentarios
Para cargar o guardar el estado de las fichas y grupos de MDI y la lista de documentos abiertos, haga lo siguiente:
- Llame a
SaveMDIState
al cerrar el marco principal. - Llame a
CMDIFrameWndEx::LoadMDIState
al crear el marco principal. La ubicación recomendada para esta llamada es antes de que se muestre el marco principal por primera vez. - Llame a
CWinAppEx::EnableLoadWindowPlacement(FALSE);
antes que apMainFrame->LoadFrame (IDR_MAINFRAME);
. - Llame a
CWinAppEx::ReloadWindowPlacement(pMainFrame)
después de aLoadMDIState
para mostrar el marco principal en la posición almacenada en el registro. - Invalide
GetDocumentName
en la clase derivada deCMDIChildWndEx
si la aplicación muestra documentos que no están almacenados como archivos. La cadena devuelta se guardará en el registro como un identificador de documento. Para obtener más información, veaCMDIChildWndEx::GetDocumentName
. - Invalide
CMDIFrameWndEx::CreateDocumentWindow
para crear correctamente documentos cuando se cargan desde el registro. El parámetro paraCreateDocumentWindow
es la cadena queGetDocumentName
devolvió anteriormente.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa SaveMDIState
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
void CMainFrame::OnClose()
{
SaveMDIState(theApp.GetRegSectionPath());
CMDIFrameWndEx::OnClose();
}
CMDIFrameWndEx::SetPrintPreviewFrame
Establece la ventana de marco de la vista previa de impresión.
void SetPrintPreviewFrame(CFrameWnd* pWnd);
Parámetros
pWnd
[in] Puntero a una ventana de marco de versión preliminar de impresión.
Comentarios
CMDIFrameWndEx::SetupToolbarMenu
Modifica un objeto de barra de herramientas mediante la sustitución de elementos ficticios por elementos definidos por el usuario.
void SetupToolbarMenu(
CMenu& menu,
const UINT uiViewUserToolbarCmdFirst,
const UINT uiViewUserToolbarCmdLast);
Parámetros
menu
[in] Referencia a un objeto de clase 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.
CMDIFrameWndEx::ShowFullScreen
Cambia el marco principal del modo normal al modo de pantalla completa.
void ShowFullScreen();
Comentarios
CMDIFrameWndEx::ShowPane
Muestra u oculta el panel especificado.
void ShowPane(
CBasePane* pBar,
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
Parámetros
pBar
[in] Puntero al panel que se va a mostrar u ocultar.
bShow
[in] TRUE
para mostrar el panel. FALSE
para ocultar el panel.
bDelay
[in] TRUE
para retrasar la repetición del cálculo del diseño de acoplamiento. FALSE
para volver a calcular el diseño de acoplamiento inmediatamente.
bActivate
[in] TRUE
para mostrar el panel como inactivo. FALSE
para mostrar el panel como inactivo.
Comentarios
Llame a este método para mostrar u ocultar el panel. No use ShowWindow
para paneles de acoplamiento.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa ShowPane
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
void COutputList1::OnViewOutput()
{
CBasePane* pParentBar = DYNAMIC_DOWNCAST(CBasePane, GetOwner());
CFrameWndEx* pMainFrame = DYNAMIC_DOWNCAST(CFrameWndEx, GetTopLevelFrame());
if (pMainFrame != NULL && pParentBar != NULL)
{
pMainFrame->SetFocus();
pMainFrame->ShowPane(pParentBar, FALSE, FALSE, FALSE);
}
}
CMDIFrameWndEx::ShowWindowsDialog
Crea un cuadro CMFCWindowsManagerDialog
y lo abre.
void ShowWindowsDialog();
Ejemplo
En el ejemplo siguiente se muestra cómo se usa ShowWindowsDialog
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
void CMainFrame::OnWindowManager()
{
ShowWindowsDialog();
}
CMDIFrameWndEx::TabbedDocumentToControlBar
Convierte el documento con fichas especificado en un panel de acoplamiento.
virtual BOOL TabbedDocumentToControlBar(CMDIChildWndEx* pMDIChildWnd);
Parámetros
pMDIChildWnd
Puntero a la ventana secundaria MDI que contiene un panel de acoplamiento.
Valor devuelto
TRUE
si el método se ha ejecutado correctamente; FALSE
en caso de error.
Comentarios
Use este método para convertir un documento con fichas en un panel de acoplamiento. El documento con fichas debe haberse creado mediante CMDIFrameWndEx::ControlBarToTabbedDocument
.
Ejemplo
En el ejemplo siguiente se muestra cómo se usa TabbedDocumentToControlBar
en Ejemplo de VisualStudioDemo: aplicación de Visual Studio de MFC.
void CMainFrame::OnMdiTabbedDocument()
{
CMDIChildWndEx* pMDIChild = DYNAMIC_DOWNCAST(CMDIChildWndEx, MDIGetActive());
if (pMDIChild == NULL)
{
ASSERT(FALSE);
return;
}
TabbedDocumentToControlBar(pMDIChild);
}
CMDIFrameWndEx::UpdateCaption
Lo llama el marco para actualizar la barra de título de la ventana de marco.
void UpdateCaption();
Comentarios
CMDIFrameWndEx::UpdateMDITabbedBarsIcons
Establece el icono de cada panel con fichas de MDI.
void UpdateMDITabbedBarsIcons();
CMDIFrameWndEx::WinHelp
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
dwData
[in] Especifica datos según sea necesario para el tipo de ayuda indicado por nCmd
.
nCmd
[in] Especifica el tipo de ayuda solicitada. Para obtener más información sobre los valores posibles y cómo afectan al parámetro dwData
, consulte WinHelp
.
Comentarios
Este método invalida CWnd::WinHelp
.
Consulte también
Gráfico de jerarquías
Clases
Clase CMDIFrameWnd
Clase CMDIChildWndEx