Freigeben über


CMDIFrameWndEx::EnableMDITabs

Aktiviert oder deaktiviert die MDI-Registerkartenfunktion für das MDI-Rahmenfenster. Wenn die Option aktiviert ist, zeigt das Rahmenfenster eine Registerkarte für jedes untergeordnete MDI-Fenster an.

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

Parameter

  • bEnable
    Gibt an, ob Registerkarten aktiviert werden.

  • bIcons
    Gibt an, ob Symbole auf den Registerkarten angezeigt werden sollen.

  • tabLocation
    Gibt den Speicherort der Registerkartenbezeichnungen an.

  • bTabCloseButton
    Gibt an, ob Registerkartenschaltfläche schließen anzeigt.

  • style
    Gibt das Format der Registerkarten an. Verwenden Sie STYLE_3D_SCROLLED für reguläre Registerkarten oder STYLE_3D_ONENOTE Registerkarten für Microsoft OneNote.

  • bTabCustomTooltips
    Gibt an, ob benutzerdefinierte QuickInfos aktiviert werden.

  • bActiveTabCloseButton
    Wenn TRUE, eine Schaltfläche Schließen auf der aktiven Registerkarte statt auf der rechten Ecke des Registerkartenbereichs angezeigt wird.

Hinweise

Rufen Sie diese Methode auf, um die MDI-Registerkartenfunktion für das MDI-Rahmenfenster zu aktivieren oder zu deaktivieren. Wenn sie aktiviert werden, werden alle untergeordneten Fenster als Registerkarten angezeigt.

Die Registerkartenbezeichnungen können oben isoliert oder unter den Frame, abhängig von der Einstellung des Parameters tabLocation. Sie können entweder CMFCTabCtrl::LOCATION_BOTTOM (die Standardeinstellung) oder CMFCTabCtrl::LOCATION_TOP an.

Wenn bTabCustomTooltipsTRUE ist, wird eine Meldung in das AFX_WM_ON_GET_TAB_TOOLTIP Hauptrahmenfenster gesendet. Der Code kann diese Meldung bearbeiten und das Framework mit benutzerdefinierten QuickInfos für MDI-Registerkarten bereitgestellt.

Beispiel

Im folgenden Beispiel wird gezeigt, wie EnableMDITabs in MDITabsDemo-Beispiel: MDI im Registerkartenformat verwendet wird.

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;

Anforderungen

Header: afxMDIFrameWndEx.h

Siehe auch

Referenz

CMDIFrameWndEx-Klasse

Hierarchiediagramm