Поделиться через


Класс CBaseTabbedPane

Расширяет функциональность CDockablePane Class для поддержки создания окон с вкладками.

Синтаксис

class CBaseTabbedPane : public CDockablePane

Участники

Открытые конструкторы

Имя Описание
CBaseTabbedPane::CBaseTabbedPane Конструктор по умолчанию.

Открытые методы

Имя Описание
CBaseTabbedPane::AddTab Добавляет новую вкладку в панель вкладок.
CBaseTabbedPane::AllowDetyEmptyTabbedPane Указывает, можно ли уничтожить пустую панель вкладок.
CBaseTabbedPane::ApplyRestoredTabInfo Применяет параметры вкладки, загруженные из реестра, на вкладку.
CBaseTabbedPane::CanFloat Определяет, может ли область плавать. (Переопределения CBasePane::CanFloat.)
CBaseTabbedPane::CanSetCaptionTextToTabName Определяет, должен ли заголовок панели табуляции отображать тот же текст, что и активная вкладка.
CBaseTabbedPane::ConvertToTabbedDocument (Переопределения CDockablePane::ConvertToTabbedDocument.)
CBaseTabbedPane::D etachPane Преобразует одну или несколько док-панелей в документы с вкладками MDI.
CBaseTabbedPane::EnableSetCaptionTextToTabName Включает или отключает возможность панели табуляции синхронизировать текст подписи с текстом метки на активной вкладке.
CBaseTabbedPane::FillDefaultTabsOrderArray Восстанавливает внутренний порядок вкладок в состояние по умолчанию.
CBaseTabbedPane::FindBarByTabNumber Возвращает панель, расположенную на вкладке, когда вкладка определяется индексом табуляции с нуля.
CBaseTabbedPane::FindPaneByID Возвращает область, определяемую идентификатором области.
CBaseTabbedPane::FloatTab Преобразует панель в плавающую, но только если она расположена на отделяемой вкладке.
CBaseTabbedPane::GetDefaultTabsOrder Возвращает порядок вкладок по умолчанию в области.
CBaseTabbedPane::GetFirstVisibleTab Извлекает указатель на первую отображаемую вкладку.
CBaseTabbedPane::GetMinSize Извлекает минимальный допустимый размер области. (Переопределения CPane::GetMinSize.)
CBaseTabbedPane::GetPaneIcon Возвращает дескриптор на значок области. (Переопределения CBasePane::GetPaneIcon.)
CBaseTabbedPane::GetPaneList Возвращает список панелей, содержащихся на вкладке.
CBaseTabbedPane::GetTabArea Возвращает ограничивающие прямоугольники для областей верхнего и нижнего вкладок.
CBaseTabbedPane::GetTabsNum Возвращает количество вкладок в окне вкладки.
CBaseTabbedPane::GetUnderlyingWindow Возвращает базовое (упаковаемое) окно вкладки.
CBaseTabbedPane::GetVisibleTabsNum Возвращает количество отображаемых вкладок.
CBaseTabbedPane::HasAutoHideMode Определяет, можно ли переключить панель вкладок в режим автоматического скрытия.
CBaseTabbedPane::IsHideSingleTab Определяет, скрыта ли панель вкладок, если отображается только одна вкладка.
CBaseTabbedPane::LoadSiblingPaneIDs Используется внутренне во время сериализации.
CBaseTabbedPane::RecalcLayout Пересчитывает сведения о макете области. (Переопределения CPane::RecalcLayout.)
CBaseTabbedPane::RemovePane Удаляет панель из области табуляции.
CBaseTabbedPane::SaveSiblingBarIDs Используется внутренне во время сериализации.
CBaseTabbedPane::Serialize (Переопределения CDockablePane::Serialize.)
CBaseTabbedPane::SerializeTabWindow Используется внутренне во время сериализации.
CBaseTabbedPane::SetAutoDeppe Определяет, будет ли автоматически уничтожена панель управления с вкладками.
CBaseTabbedPane::SetAutoHideMode Переключение области закрепления между отображаемым и автоматически скрытым режимом. (Переопределения CDockablePane::SetAutoHideMode.)
CBaseTabbedPane::ShowTab Отображает или скрывает вкладку.

Замечания

Этот класс является абстрактным классом и не может быть создан экземпляр. Он реализует службы, которые являются общими для всех видов панелей вкладок.

В настоящее время библиотека включает два производных класса области табуляции: класс CTabbedPane и класс CMFCOutlookBar.

Объект CBaseTabbedPane упаковывает указатель на объект класса CMFCBaseTabCtrl. Затем класс CMFCBaseTabCtrl становится дочерним окном области вкладок.

Дополнительные сведения о создании панелей табуляции см. в разделе CDockablePane Class, CTabbedPane Class и CMFCOutlookBar Class.

Иерархия наследования

CObject

CCmdTarget

CWnd

CBasePane

CPane

CDockablePane

CBaseTabbedPane

Требования

Заголовок: afxBaseTabbedPane.h

CBaseTabbedPane::AddTab

Добавляет новую вкладку в панель вкладок.

virtual BOOL AddTab(
    CWnd* pNewBar,
    BOOL bVisible = TRUE,
    BOOL bSetActive = TRUE,
    BOOL bDetachable = TRUE);

Параметры

pNewBar
[in, out] Указатель на добавленную область. Этот указатель может стать недопустимым после вызова этого метода. Дополнительные сведения см. в разделе с примечаниями.

bVisible
[in] ЗНАЧЕНИЕ TRUE, чтобы сделать вкладку видимой; в противном случае — ЗНАЧЕНИЕ FALSE.

bSetActive
[in] ЗНАЧЕНИЕ TRUE, чтобы сделать вкладку активной; в противном случае — ЗНАЧЕНИЕ FALSE.

bDetachable
[in] ЗНАЧЕНИЕ TRUE, чтобы сделать вкладку отсоединяемой; в противном случае — ЗНАЧЕНИЕ FALSE.

Возвращаемое значение

Значение TRUE, если панель была успешно добавлена в качестве вкладки и не была уничтожена в процессе. False, если добавленная область является объектом типа CBaseTabbedPane. Дополнительные сведения см. в разделе с примечаниями.

Замечания

Вызовите этот метод, чтобы добавить панель в качестве новой вкладки на вкладке. Если pNewBar указывает на объект типа CBaseTabbedPane, все его вкладки копируются на вкладку, а затем pNewBar уничтожается. Таким образом, pNewBar становится недопустимым указателем и не следует использовать.

CBaseTabbedPane::AllowDetyEmptyTabbedPane

Указывает, можно ли уничтожить пустую панель вкладок.

virtual BOOL AllowDestroyEmptyTabbedPane() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если пустая панель вкладок может быть уничтожена; в противном случае — ЗНАЧЕНИЕ FALSE. Реализация по умолчанию всегда возвращает ЗНАЧЕНИЕ TRUE.

Замечания

Если пустая панель табуляции не разрешена, платформа скрывает ее.

CBaseTabbedPane::ApplyRestoredTabInfo

Загружает параметры вкладки из реестра и применяет их к области вкладок.

virtual void ApplyRestoredTabInfo(BOOL bUseTabIndexes = FALSE);

Параметры

bUseTabIndexes
[in] Этот параметр используется внутренне платформой.

Замечания

Этот метод вызывается платформой при перезагрузке сведений о состоянии прикрепления из реестра. Метод получает сведения о порядке вкладок и именах вкладок для области табуляции.

CBaseTabbedPane::CanFloat

Указывает, может ли область с вкладками плавать.

virtual BOOL CanFloat() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если панель может плавать; в противном случае — ЗНАЧЕНИЕ FALSE.

CBaseTabbedPane::CanSetCaptionTextToTabName

Определяет, должен ли заголовок панели табуляции отображать тот же текст, что и активная вкладка.

virtual BOOL CanSetCaptionTextToTabName() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если текст заголовка области табуляции установлен в текст активной вкладки; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Метод используется для определения того, дублирует ли текст, отображаемый на вкладке, подпись панели с вкладками. Эту функцию можно включить или отключить, вызвав CBaseTabbedPane::EnableSetCaptionTextToTabName.

CBaseTabbedPane::ConvertToTabbedDocument

Преобразует одну или несколько док-панелей в документы с вкладками MDI.

virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);

Параметры

bActiveTabOnly
[in] При преобразовании области табуляции укажите ЗНАЧЕНИЕ TRUE, чтобы преобразовать только активную вкладку. Укажите FALSE для преобразования всех вкладок на панели.

CBaseTabbedPane::D etachPane

Отсоединяет панель от области табуляции.

virtual BOOL DetachPane(
    CWnd* pBar,
    BOOL bHide = FALSE);

Параметры

pBar
[in] Указатель на панель для отсоединения.

bHide
[in] Логический параметр, указывающий, скрывает ли платформа панель после отсоединения.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если платформа успешно отсоединяет панель; ЗНАЧЕНИЕ FALSE, если pBar имеет значение NULL или ссылается на панель, которая не находится на вкладке.

Замечания

Платформа плавает по возможности отсоединяемой панели. Дополнительные сведения см. в разделе CBasePane::CanFloat.

CBaseTabbedPane::EnableSetCaptionTextToTabName

Включает или отключает возможность панели табуляции синхронизировать текст подписи с текстом метки на активной вкладке.

virtual void EnableSetCaptionTextToTabName(BOOL bEnable);

Параметры

bEnable
[in] ЗНАЧЕНИЕ TRUE для синхронизации заголовка панели с активной подписью вкладки; в противном случае — ЗНАЧЕНИЕ FALSE.

CBaseTabbedPane::FillDefaultTabsOrderArray

Восстанавливает внутренний порядок вкладок в состояние по умолчанию.

void FillDefaultTabsOrderArray();

Замечания

Этот метод вызывается при восстановлении панели Outlook в исходном состоянии.

CBaseTabbedPane::FindPaneByID

Возвращает область, определяемую идентификатором панели.

virtual CWnd* FindPaneByID(UINT uBarID);

Параметры

uBarID
[in] Указывает идентификатор области для поиска.

Возвращаемое значение

Указатель на область, если она найдена; в противном случае значение NULL.

Замечания

Этот метод сравнивает все вкладки в области и возвращает его с идентификатором, указанным параметром uBarID .

CBaseTabbedPane::FindBarByTabNumber

Возвращает область, расположенную на вкладке.

virtual CWnd* FindBarByTabNumber(
    int nTabNum,
    BOOL bGetWrappedBar = FALSE);

Параметры

nTabNum
[in] Указывает отсчитываемый от нуля индекс табуляции.

bGetWrappedBar
[in] ЗНАЧЕНИЕ TRUE, чтобы вернуть базовое (упаковаемое) окно панели вместо самой панели; в противном случае ЗНАЧЕНИЕ FALSE. Это относится только к панелям, производным от CDockablePaneAdapter.

Возвращаемое значение

Если область найдена, возвращается допустимый указатель на область поиска; в противном случае значение NULL.

Замечания

Вызовите этот метод, чтобы получить область, размещенную на вкладке, указанной параметром nTabNum .

CBaseTabbedPane::FloatTab

Преобразует панель в плавающую, но только если она расположена на отделяемой вкладке.

virtual BOOL FloatTab(
    CWnd* pBar,
    int nTabID,
    AFX_DOCK_METHOD dockMethod,
    BOOL bHide = FALSE);

Параметры

pBar
[in, out] Указатель на область с плавающей запятой.

nTabID
[in] Задает отсчитываемый от нуля индекс вкладки, который будет плавать.

dockMethod
[in] Задает метод, используемый для создания с плавающей запятой панели. Дополнительные сведения см. в разделе с примечаниями.

bHide
[in] Значение TRUE, чтобы скрыть панель перед плавающей запятой; в противном случае — ЗНАЧЕНИЕ FALSE.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если область с плавающей запятой; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Вызовите этот метод, чтобы с плавать панелью, которая в настоящее время находится на отсоединяемой вкладке.

Если вы хотите отсоединить панель программным способом, укажите DM_SHOW для параметра dockMethod . Если вы хотите с плавать панелью в той же позиции, где она плавала ранее, укажите DM_DBL_CLICK в качестве параметра dockMethod .

CBaseTabbedPane::GetDefaultTabsOrder

Возвращает порядок вкладок по умолчанию в области.

const CArray<int,int>& GetDefaultTabsOrder();

Возвращаемое значение

Объект CArray , указывающий порядок вкладок по умолчанию в области.

Замечания

Платформа вызывает этот метод, когда панель Outlook сбрасывается в исходное состояние.

CBaseTabbedPane::GetFirstVisibleTab

Извлекает указатель на первую отображаемую вкладку.

virtual CWnd* GetFirstVisibleTab(int& iTabNum);

Параметры

iTabNum
[in] Ссылка на целое число. Этот метод записывает отсчитываемый от нуля индекс первой отображаемой вкладки в этот параметр или -1, если не найдена вкладка.

Возвращаемое значение

При успешном выполнении указатель на первую отображаемую вкладку; в противном случае значение NULL.

CBaseTabbedPane::GetMinSize

Извлекает минимальный допустимый размер области.

virtual void GetMinSize(CSize& size) const;

Параметры

size
[out] CSize Объект, заполненный минимальным допустимым размером.

Замечания

Если согласованная обработка минимальных размеров панели активна (CPane::m_bHandleMinSize), размер заполняется минимальным допустимым размером для активной вкладки. В противном случае размер заполняется возвращаемым значением CPane::GetMinSize.

CBaseTabbedPane::GetPaneIcon

Извлекает минимальный допустимый размер области.

virtual void GetMinSize(CSize& size) const;

Параметры

size
[out] CSize Объект, заполненный минимальным допустимым размером.

Замечания

Если согласованная обработка минимальных размеров панели активна (CPane::m_bHandleMinSize), размер заполняется минимальным допустимым размером для активной вкладки. В противном случае размер заполняется возвращаемым значением CPane::GetMinSize.

CBaseTabbedPane::GetPaneList

Возвращает список панелей, содержащихся на вкладке.

virtual void GetPaneList(
    CObList& lst,
    CRuntimeClass* pRTCFilter = NULL);

Параметры

lst
[out] Объект CObList , заполненный панелями, содержащимися на вкладках.

pRTCFilter
[in] Если значение не равно NULL, возвращаемый список содержит только области, которые относятся к указанному классу среды выполнения.

CBaseTabbedPane::GetTabArea

Возвращает ограничивающие прямоугольники для областей верхнего и нижнего вкладок.

virtual void GetTabArea(
    CRect& rectTabAreaTop,
    CRect& rectTabAreaBottom) const = 0;

Параметры

rectTabAreaTop
[out] Получает координаты экрана верхней области табуляции.

rectTabAreaBottom
[out] Получает координаты экрана нижней области вкладок.

Замечания

Вызовите этот метод, чтобы определить ограничивающие прямоугольники в координатах экрана для областей верхнего и нижнего вкладок.

CBaseTabbedPane::GetTabsNum

Возвращает количество вкладок в окне вкладки.

virtual int GetTabsNum() const;

Возвращаемое значение

Количество вкладок на панели вкладок.

CBaseTabbedPane::GetUnderlyingWindow

Возвращает базовое (упаковаемое) окно вкладки.

virtual CMFCBaseTabCtrl* GetUnderlyingWindow();

Возвращаемое значение

Указатель на базовое окно вкладки.

CBaseTabbedPane::GetVisibleTabsNum

Возвращает количество видимых вкладок.

virtual int GetVisibleTabsNum() const;

Возвращаемое значение

Число видимых вкладок, которое будет больше или равно нулю.

Замечания

Вызовите этот метод, чтобы определить количество видимых вкладок на панели вкладок.

CBaseTabbedPane::HasAutoHideMode

Определяет возможность переключения панели с вкладками в режим автоматического скрытия.

virtual BOOL HasAutoHideMode() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если панель может быть переключится в режим автохиды; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Если режим автохиды отключен, кнопка закрепления не отображается в заголовке панели с вкладками.

CBaseTabbedPane::IsHideSingleTab

Определяет, скрыта ли панель вкладок, если отображается только одна вкладка.

virtual BOOL IsHideSingleTab() const;

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если окно вкладки не отображается, если существует только одна видимая вкладка; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Если панель не отображается, так как открыта только одна вкладка, можно вызвать этот метод, чтобы определить, работает ли панель вкладок правильно.

CBaseTabbedPane::RemovePane

Удаляет панель из области табуляции.

virtual BOOL RemovePane(CWnd* pBar);

Параметры

pBar
[in, out] Указатель на панель, удаляемую с вкладки.

Возвращаемое значение

Значение TRUE, если панель была успешно удалена из области табуляции и если панель табуляции по-прежнему действительна. ЗНАЧЕНИЕ FALSE, если последняя панель была удалена из области табуляции, и область табуляции будет уничтожена. Если возвращаемое значение равно FALSE, больше не используйте панель вкладок.

Замечания

Вызовите этот метод, чтобы удалить область, указанную параметром pBar , из области табуляции.

CBaseTabbedPane::SetAutoDeppe

Определяет, будет ли автоматически уничтожена панель управления с вкладками.

void SetAutoDestroy(BOOL bAutoDestroy = TRUE);

Параметры

bAutoDesk
[in] ЗНАЧЕНИЕ TRUE, если панель вкладок была создана динамически, и вы не управляете временем существования; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

Установите режим автоматического уничтожения значение TRUE, если вы создаете панель с вкладками динамически и если вы не контролируете его время существования. Если режим автоматического уничтожения имеет значение TRUE, панель табуляции будет автоматически уничтожена платформой.

CBaseTabbedPane::ShowTab

Отображает или скрывает вкладку.

virtual BOOL ShowTab(
    CWnd* pBar,
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Параметры

pBar
[in] Указатель на область для отображения или скрытия.

bShow
[in] Значение TRUE для отображения области; Значение FALSE для скрытия области.

bDelay
[in] ЗНАЧЕНИЕ TRUE, чтобы отложить корректировку макета вкладки; в противном случае — ЗНАЧЕНИЕ FALSE.

bActivate
[in] ЗНАЧЕНИЕ TRUE, чтобы сделать вкладку активной; в противном случае — ЗНАЧЕНИЕ FALSE.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если вкладка была показана или скрыта успешно; в противном случае — ЗНАЧЕНИЕ FALSE.

Замечания

При вызове этого метода панель отображается или скрыта в зависимости от значения параметра bShow . Если вы скрываете вкладку и она является последней видимой вкладкой в базовом окне вкладки, область вкладок скрыта. Если вы отображаете вкладку, когда ранее не отображались вкладки, отображается панель вкладок.

CBaseTabbedPane::RecalcLayout

Пересчитывает сведения о макете области.

virtual void RecalcLayout();

Замечания

Если область плавает, этот метод уведомляет платформу изменить размер панели до текущего размера мини-кадра.

Если панель закреплена, этот метод ничего не делает.

CBaseTabbedPane::SetAutoHideMode

Задает режим автоматического скрытия для отсоединяемых панелей на вкладке.

virtual CMFCAutoHideToolBar* SetAutoHideMode(
    BOOL bMode,
    DWORD dwAlignment,
    CMFCAutoHideToolBar* pCurrAutoHideBar = NULL,
    BOOL bUseTimer = TRUE);

Параметры

bMode
[in] ЗНАЧЕНИЕ TRUE для включения режима автоматического скрытия; ЗНАЧЕНИЕ FALSE для включения регулярного режима док-станции.

dwAlignment
[in] Указывает выравнивание создаваемой области автоматического скрытия. Список возможных значений см. в разделе CPane::MoveByAlignment.

pCurrAutoHideBar
[in, out] Указатель на текущую панель инструментов автоматического скрытия. Может иметь значение NULL.

bUseTimer
[in] Указывает, следует ли использовать эффект автоматического скрытия, когда пользователь переключает панель в режим автоматического скрытия или сразу же скрытие области.

Возвращаемое значение

Указатель на панель инструментов автоматического скрытия, созданную при переключении на режим автоматического скрытия, или ЗНАЧЕНИЕ NULL, если панель инструментов не создана.

Замечания

Платформа вызывает этот метод, когда пользователь выбирает кнопку закрепления, чтобы переключить панель вкладок в режим автоматического скрытия или в обычный режим закрепления.

Режим автоматического скрытия устанавливается для каждой отсоединяемой области на вкладке. Области, которые не являются отсоединенными, игнорируются. Дополнительные сведения см. в разделе CMFCBaseTabCtrl::EnableTabDetach.

Вызовите этот метод, чтобы переключить панель с вкладками для автоматического скрытия режима программным способом. Панель должна быть закреплена в главном окне кадра ( CDockablePane::GetDefaultPaneDivider должен вернуть допустимый указатель на CPaneDivider).

См. также

Диаграмма иерархии
Классы
Класс CDockablePane