Partilhar via


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

Consulte também

Referência

Classe de CMDIFrameWndEx

Gráfico de hierarquia