CMDIFrameWndEx::EnableMDITabs
Habilita ou desabilita o recurso de guias MDI para a janela do quadro MDI.Quando ativada, a janela do quadro exibe um guia para cada janela filho 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 se os guias estão habilitados.bIcons
Especifica se os ícones devem ser exibidos nas guias.tabLocation
Especifica o local de rótulos de tabulação.bTabCloseButton
Especifica se exibir os próximos botões na guia.style
Especifica o estilo de guias.Use snaplines para STYLE_3D_SCROLLED normais ou STYLE_3D_ONENOTE para guias da Microsoft OneNote.bTabCustomTooltips
Especifica se tooltips personalizados estão habilitados.bActiveTabCloseButton
Se TRUE, um botão de Fechar será exibido na guia ativa em vez de no canto direito da área de tabulação.
Comentários
Chamar esse método para ativar ou desativar o recurso de guias MDI para a janela do quadro MDI.Quando ativadas, todas as janelas filho são exibidas como guias.
Rótulos da guia podem estar localizadas na parte superior ou inferior do quadro, dependendo da configuração de parâmetro tabLocation.Você pode especificar CMFCTabCtrl::LOCATION_BOTTOM (a configuração padrão) ou CMFCTabCtrl::LOCATION_TOP.
Se bTabCustomTooltips é TRUE, uma mensagem de AFX_WM_ON_GET_TAB_TOOLTIP será enviada para a janela de quadro chave.Seu código pode manipular esta mensagem e fornecer a estrutura com dicas de ferramentas personalizadas para guias MDI.
Exemplo
O exemplo a seguir mostra como EnableMDITabs é usado em exemplo de MDITabsDemo: Com guias aplicativo MFC MDI.
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;
Requisitos
Cabeçalho: afxMDIFrameWndEx.h