Класс 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.
Иерархия наследования
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).