Aracılığıyla paylaş


CMDIFrameWndEx::EnableMDITabs

Etkinleştirir veya çerçeve MDI penceresinin MDI sekmeler özelliğini devre dışı bırakır.Çerçeve penceresi etkin olduğunda, her bir MDI alt penceresi için bir sekme görüntüler.

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 
);

Parametreler

  • bEnable
    Sekmeleri etkinleştirilip etkinleştirilmeyeceğini belirtir.

  • bIcons
    Simgeleri sekmelerin görüntülenip görüntülenmeyeceğini belirtir.

  • tabLocation
    Sekme etiketleri konumunu belirtir.

  • bTabCloseButton
    Sekmeyi Kapat düğmelerinin görüntülenip görüntülenmeyeceğini belirtir.

  • style
    Sekmeleri stilini belirtir.Use STYLE_3D_SCROLLED normal sekmeler için ya da STYLE_3D_ONENOTE Microsoft OneNote sekmeler için.

  • bTabCustomTooltips
    Araç ipuçlarını etkinleştirilip etkinleştirilmeyeceğini belirtir.

  • bActiveTabCloseButton
    TRUE, Bir Kapat düğmesinin görüntülenip sekmesinde etkin yerine sekme alanı sağ köşesinde.

Notlar

MDI çerçevesi penceresinin MDI sekmeler özelliğini devre dışı bırakmak veya etkinleştirmek için bu yöntemi çağırın.Etkinleştirildiğinde, tüm alt pencereleri sekmeler görüntülenir.

Sekme etiketleri üst veya alt parametresi ayarına bağlı olarak çerçevenin bulunduğu tabLocation.Ya da belirtebilir CMFCTabCtrl::LOCATION_BOTTOM (varsayılan ayar) veya CMFCTabCtrl::LOCATION_TOP.

bTabCustomTooltips Olan TRUE, bir AFX_WM_ON_GET_TAB_TOOLTIP ileti gönderme için ana çerçeve penceresi.Kodunuzu bu iletiyi işlemek ve framework ile araç ipuçlarını MDI sekmeler için sağlar.

Örnek

Aşağıdaki örnekte gösterildiği nasıl EnableMDITabs , kullanılan MDITabsDemo örnek: mfc sekmeli MDI uygulaması.

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;

Gereksinimler

Başlık: afxMDIFrameWndEx.h

Ayrıca bkz.

Başvuru

CMDIFrameWndEx sınıfı

Hiyerarşi grafik