Класс CMFCMenuBar
Строка меню, которая реализует закрепление. Дополнительные сведения см. в исходном коде, расположенном в папке VC\atlmfc\src\mfc установки Visual Studio.
Синтаксис
class CMFCMenuBar : public CMFCToolbar
Участники
Открытые методы
Имя | Описание |
---|---|
CMFCMenuBar::AdjustLocations | (Переопределяет CMFCToolBar::AdjustLocations .) |
CMFCMenuBar::AllowChangeTextLabels | Указывает, можно ли отображать текстовые метки под изображениями на кнопках панели инструментов. (Переопределения CMFCToolBar::AllowChangeTextLabels.) |
CMFCMenuBar::AllowShowOnPaneMeneMenu | (Переопределяет CPane::AllowShowOnPaneMenu .) |
CMFCMenuBar::CalcFixedLayout | Вычисляет горизонтальный размер панели инструментов. (Переопределения CMFCToolBar::CalcFixedLayout.) |
CMFCMenuBar::CalcLayout | (Переопределяет CMFCToolBar::CalcLayout .) |
CMFCMenuBar::CalcMaxButtonHeight | Вычисляет максимальную высоту кнопок на панели инструментов. (Переопределения CMFCToolBar::CalcMaxButtonHeight.) |
CMFCMenuBar::CanBeClosed | Указывает, может ли пользователь закрыть панель инструментов. (Переопределения CMFCToolBar::CanBeClosed.) |
CMFCMenuBar::CanBeRestored | Определяет, может ли система восстановить панель инструментов до исходного состояния после настройки. (Переопределения CMFCToolBar::CanBeRestored.) |
CMFCMenuBar::Create | Создает элемент управления меню и присоединяет его к объекту CMFCMenuBar . |
CMFCMenuBar::CreateEx | CMFCMenuBar Создает объект с дополнительными параметрами стиля. |
CMFCMenuBar::CreateFromMenu | Инициализирует объект CMFCMenuBar . Принимает параметр HMENU, который выступает в качестве шаблона для заполненного CMFCMenuBar . |
CMFCMenuBar::EnableHelpCombobox | Включает поле со списком справки , расположенное в правой части строки меню. |
CMFCMenuBar::EnableMenuShadows | Указывает, следует ли отображать тени для всплывающих меню. |
CMFCMenuBar::GetAvailableExpandSize | (Переопределения CPane::GetAvailableExpandSize.) |
CMFCMenuBar::GetColumnWidth | Возвращает ширину кнопок панели инструментов. (Переопределения CMFCToolBar::GetColumnWidth.) |
CMFCMenuBar::GetDefaultMenu | Возвращает дескриптор исходного меню в файле ресурса. |
CMFCMenuBar::GetDefaultMenuResId | Возвращает идентификатор ресурса для исходного меню в файле ресурса. |
CMFCMenuBar::GetFloatPopupDirection | |
CMFCMenuBar::GetForceDownArrows | |
CMFCMenuBar::GetHelpCombobox | Возвращает указатель на поле со списком справки. |
CMFCMenuBar::GetHMenu | Возвращает дескриптор меню, присоединенное к объекту CMFCMenuBar . |
CMFCMenuBar::GetMenuFont | Возвращает текущий глобальный шрифт для объектов меню. |
CMFCMenuBar::GetMenuItem | Возвращает кнопку панели инструментов, связанную с предоставленным индексом элемента. |
CMFCMenuBar::GetRowHeight | Возвращает высоту кнопок панели инструментов. (Переопределения CMFCToolBar::GetRowHeight.) |
CMFCMenuBar::GetSystemButton | |
CMFCMenuBar::GetSystemButtonsCount | |
CMFCMenuBar::GetSystemMenu | |
CMFCMenuBar::HighlightDisabledItems | Указывает, выделены ли отключенные элементы меню. |
CMFCMenuBar::IsButtonExtraSizeAvailable | Определяет, может ли панель инструментов отображать кнопки с расширенными границами. (Переопределения CMFCToolBar::IsButtonExtraSizeAvailable.) |
CMFCMenuBar::IsHighlightDisabledItems | Указывает, выделены ли отключенные элементы. |
CMFCMenuBar::IsMenuShadows | Указывает, рисуются ли тени для всплывающих меню. |
CMFCMenuBar::IsRecentlyUsedMenus | Указывает, отображаются ли недавно используемые команды меню в строке меню. |
CMFCMenuBar::IsShowAllCommands | Указывает, отображаются ли всплывающие меню все команды. |
CMFCMenuBar::IsShowAllCommandsDelay | Указывает, отображаются ли меню все команды после короткой задержки. |
CMFCMenuBar::LoadState | Загружает состояние CMFCMenuBar объекта из реестра. |
CMFCMenuBar::OnChangeHot | Вызывается платформой, когда пользователь выбирает кнопку на панели инструментов. (Переопределения CMFCToolBar::OnChangeHot.) |
CMFCMenuBar::OnDefaultMenuLoaded | Вызывается платформой, когда окно фрейма загружает меню по умолчанию из файла ресурсов. |
CMFCMenuBar::OnSendCommand | (Переопределяет CMFCToolBar::OnSendCommand .) |
CMFCMenuBar::OnSetDefaultButtonText | Вызывается платформой, когда меню находится в режиме настройки, и пользователь изменяет текст элемента меню. |
CMFCMenuBar::OnToolHitTest | (Переопределяет CMFCToolBar::OnToolHitTest .) |
CMFCMenuBar::P reTranslateMessage | (Переопределяет CMFCToolBar::PreTranslateMessage .) |
CMFCMenuBar::RestoreOriginalstate | Вызывается платформой, когда меню находится в режиме настройки, и пользователь выбирает сброс для строки меню. |
CMFCMenuBar::SaveState | Сохраняет состояние CMFCMenuBar объекта в реестре. |
CMFCMenuBar::SetDefaultMenuResId | Задает исходное меню в файле ресурсов. |
CMFCMenuBar::SetForceDownArrows | |
CMFCMenuBar::SetMaximizeMode | Вызывается платформой, когда дочернее окно MDI изменяет режим отображения. Если дочернее окно MDI только что развернуто или больше не развернуто, этот метод обновляет строку меню. |
CMFCMenuBar::SetMenuButtonRTC | Задает сведения о классе среды выполнения, создаваемые при динамическом создании кнопок меню пользователем. |
CMFCMenuBar::SetMenuFont | Задает шрифт для всех меню в приложении. |
CMFCMenuBar::SetRecentlyUsedMenus | Указывает, отображает ли строка меню недавно использованные команды меню. |
CMFCMenuBar::SetShowAllCommands | Указывает, отображает ли строка меню все команды. |
Замечания
Класс CMFCMenuBar
— это строка меню, реализующая функции закрепления. Она похожа на панель инструментов, хотя она не может быть закрыта — она всегда отображается.
CMFCMenuBar
поддерживает параметр отображения недавно используемых объектов элемента меню. Если этот параметр включен, отображается CMFCMenuBar
только подмножество доступных команд при первом просмотре. После этого недавно используемые команды отображаются вместе с исходным подмножеством команд. Кроме того, пользователь всегда может развернуть меню, чтобы просмотреть все доступные команды. Таким образом, каждая доступная команда настроена для постоянного отображения или отображения только в том случае, если она была выбрана недавно.
Чтобы использовать CMFCMenuBar
объект, встраивайте его в объект кадра главного окна. При обработке WM_CREATE
сообщения, вызове CMFCMenuBar::Create
или CMFCMenuBar::CreateEx
. Независимо от того, какая используемая функция создается, передайте указатель на главное окно фрейма. Затем включите закрепление, вызвав CFrameWndEx::EnableDocking. Закрепите это меню, вызвав CFrameWndEx::D ockPane.
Пример
В приведенном ниже примере демонстрируется использование различных методов класса CMFCMenuBar
. В примере показано, как задать стиль панели, включить кнопку настройки, включить поле справки, включить тени для всплывающих меню и обновить строку меню. Этот фрагмент кода является частью примера демонстрации IE.
CMFCMenuBar m_wndMenuBar;
m_wndMenuBar.SetPaneStyle(m_wndMenuBar.GetPaneStyle() | CBRS_SIZE_DYNAMIC);
m_wndMenuBar.EnableCustomizeButton(TRUE, -1, _T(""));
// first parameter is the command ID for the button of the Help combo box
// third parameter is the width of the button for the combo box in pixels.
m_wndMenuBar.EnableHelpCombobox(1, _T("enter text here"), 30);
m_wndMenuBar.EnableMenuShadows();
m_wndMenuBar.SetMaximizeMode(true);
Иерархия наследования
CMFCMenuBar
Требования
Заголовок: afxmenubar.h
CMFCMenuBar::AdjustLocations
Настраивает позиции элементов меню в строке меню.
virtual void AdjustLocations();
Замечания
CMFCMenuBar::AllowChangeTextLabels
Определяет, разрешены ли текстовые метки под изображениями в строке меню.
virtual BOOL AllowChangeTextLabels() const;
Возвращаемое значение
Возвращает значение TRUE, если пользователь может выбрать отображение текстовых меток под изображениями.
Замечания
CMFCMenuBar::AllowShowOnPaneMeneMenu
virtual BOOL AllowShowOnPaneMenu() const;
Возвращаемое значение
Замечания
CMFCMenuBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Параметры
[in] bStretch
[in] bHorz
Возвращаемое значение
Замечания
CMFCMenuBar::CalcLayout
virtual CSize CalcLayout(
DWORD dwMode,
int nLength = -1);
Параметры
[in] dwMode
[in] nLength
Возвращаемое значение
Замечания
CMFCMenuBar::CalcMaxButtonHeight
virtual int CalcMaxButtonHeight();
Возвращаемое значение
Замечания
CMFCMenuBar::CanBeClosed
virtual BOOL CanBeClosed() const;
Возвращаемое значение
Замечания
CMFCMenuBar::CanBeRestored
virtual BOOL CanBeRestored() const;
Возвращаемое значение
Замечания
CMFCMenuBar::Create
Создает элемент управления меню и присоединяет его к объекту CMFCMenuBar .
virtual BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
UINT nID = AFX_IDW_MENUBAR);
Параметры
pParentWnd
[in] Указатель на родительское окно для нового CMFCMenuBar
объекта.
dwStyle
[in] Стиль новой строки меню.
nID
[in] Идентификатор дочернего окна строки меню.
Возвращаемое значение
Значение TRUE, если успешно; в противном случае — FALSE.
Замечания
После создания CMFCMenuBar
объекта необходимо вызвать Create
. Этот метод создает CMFCMenuBar
элемент управления и присоединяет его к объекту CMFCMenuBar
.
Дополнительные сведения о стилях инструментов см. в разделе CBasePane::SetPaneStyle.
CMFCMenuBar::CreateEx
Создает объект CMFCMenuBar с указанными расширенными стилями.
virtual BOOL CreateEx(
CWnd* pParentWnd,
DWORD dwCtrlStyle = TBSTYLE_FLAT,
DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
CRect rcBorders = CRect(1,
1,
1,
1),
UINT nID =AFX_IDW_MENUBAR);
Параметры
pParentWnd
[in] Указатель на родительское окно нового CMFCMenuBar
объекта.
dwCtrlStyle
[in] Дополнительные стили для новой строки меню.
dwStyle
[in] Основной стиль новой строки меню.
rcBorders
[in] CRect
Параметр, указывающий размеры границ CMFCMenuBar
объекта.
nID
[in] Идентификатор дочернего окна строки меню.
Возвращаемое значение
Ненулевое значение, если метод выполнен успешно; в противном случае — 0.
Замечания
Эту функцию следует использовать вместо CMFCMenuBar::Create , если вы хотите указать стили в дополнение к стилю панели инструментов. Некоторые часто используемые дополнительные стили являются TBSTYLE_TRANSPARENT и CBRS_TOP.
Список дополнительных стилей см. в разделе "Стили элементов управления панели инструментов" и "Кнопки", "Общие стили элементов управления" и "Общие стили окон".
Пример
В следующем примере показано, как использовать CreateEx
метод CMFCMenuBar
класса. Этот фрагмент кода является частью примера демонстрации IE.
CMFCMenuBar m_wndMenuBar;
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
if (!m_wndMenuBar.CreateEx(this, TBSTYLE_TRANSPARENT))
{
TRACE0("Failed to create menubar\n");
return -1; // fail to create
}
CMFCMenuBar::CreateFromMenu
Инициализирует объект CMFCMenuBar . Этот метод моделирует CMFCMenuBar
объект после параметра HMENU.
virtual void CreateFromMenu(
HMENU hMenu,
BOOL bDefaultMenu = FALSE,
BOOL bForceUpdate = FALSE);
Параметры
hMenu
[in] Дескриптор ресурса меню. CreateFromMenu
использует этот ресурс в качестве шаблона для CMFCMenuBar
.
bDefaultMenu
[in] Логическое значение, указывающее, является ли новое меню меню по умолчанию.
bForceUpdate
[in] Логическое значение, указывающее, вызывает ли этот метод обновление меню.
Замечания
Используйте этот метод, если вы хотите, чтобы элемент управления меню использовал те же элементы меню, что и ресурс меню. Этот метод вызывается после вызова CMFCMenuBar::Create или CMFCMenuBar::Create.
CMFCMenuBar::EnableHelpCombobox
Включает поле со списком справки , расположенное в правой части строки меню.
void EnableHelpCombobox(
UINT uiID,
LPCTSTR lpszPrompt = NULL,
int nComboBoxWidth = 150);
Параметры
uiID
[in] Идентификатор команды для кнопки поля со списком справки .
lpszPrompt
[in] Строка, содержащая текст, отображаемый платформой в поле со списком, если он пуст и не активен. Например, "Введите текст здесь".
nComboBoxWidth
[in] Ширина кнопки для поля со списком в пикселях.
Замечания
Поле со списком справки напоминает поле со списком справки в строке меню Microsoft Word.
При вызове этого метода с uiID с значением 0 этот метод скрывает поле со списком. В противном случае этот метод автоматически отображает поле со списком в правой части строки меню. После вызова этого метода вызовите CMFCMenuBar::GetHelpCombobox , чтобы получить указатель на вставленный объект CMFCToolBarComboBoxButton .
CMFCMenuBar::EnableMenuShadows
Включает тени для всплывающих меню.
static void EnableMenuShadows(BOOL bEnable = TRUE);
Параметры
bEnable
[in] Логический параметр, указывающий, следует ли включить тени для всплывающих меню.
Замечания
Алгоритм, который использует этот метод, является сложным и может снизить производительность приложения в более медленных системах.
CMFCMenuBar::GetAvailableExpandSize
virtual int GetAvailableExpandSize() const;
Возвращаемое значение
Замечания
CMFCMenuBar::GetColumnWidth
virtual int GetColumnWidth() const;
Возвращаемое значение
Замечания
CMFCMenuBar::GetDefaultMenu
Извлекает дескриптор в исходное меню. Платформа загружает исходное меню из файла ресурса.
HMENU GetDefaultMenu() const;
Возвращаемое значение
Дескриптор ресурса меню.
Замечания
Если приложение настраивает меню, этот метод можно использовать для извлечения дескриптора в исходное меню.
CMFCMenuBar::GetDefaultMenuResId
Извлекает идентификатор ресурса для меню по умолчанию.
UINT GetDefaultMenuResId() const;
Возвращаемое значение
Идентификатор ресурса меню.
Замечания
Платформа загружает меню по умолчанию для CMFCMenuBar
объекта из файла ресурсов.
CMFCMenuBar::GetFloatPopupDirection
int GetFloatPopupDirection(CMFCToolBarMenuButton* pButton);
Параметры
[in] pButton
Возвращаемое значение
Замечания
CMFCMenuBar::GetForceDownArrows
BOOL GetForceDownArrows();
Возвращаемое значение
Замечания
CMFCMenuBar::GetHelpCombobox
Возвращает указатель на поле со списком справки.
CMFCToolBarComboBoxButton* GetHelpCombobox();
Возвращаемое значение
Указатель на поле со списком справки. ЗНАЧЕНИЕ NULL, если поле со списком справки скрыто или не включено.
Замечания
Поле со списком справки находится в правой части строки меню. Вызовите метод CMFCMenuBar::EnableHelpCombobox , чтобы включить этот флажок со списком.
CMFCMenuBar::GetHMenu
Извлекает дескриптор в меню, подключенном к объекту CMFCMenuBar .
HMENU GetHMenu() const;
CMFCMenuBar::GetMenuFont
Извлекает текущий шрифт меню.
static const CFont& GetMenuFont(BOOL bHorz = TRUE);
Параметры
bHorz
[in] Логический параметр, указывающий, следует ли возвращать горизонтальный или вертикальный шрифт. ЗНАЧЕНИЕ TRUE указывает горизонтальный шрифт.
Возвращаемое значение
Указатель на параметр CFont , содержащий текущий шрифт строки меню.
Замечания
Возвращаемый шрифт является глобальным параметром для приложения. Для всех CMFCMenuBar
объектов поддерживаются два глобальных шрифта. Эти отдельные шрифты используются для горизонтальных и вертикальных строк меню.
CMFCMenuBar::GetMenuItem
Извлекает объект CMFCToolBarButton в строке меню на основе индекса элемента.
CMFCToolBarButton* GetMenuItem(int iItem) const;
Параметры
iItem
[in] Индекс возвращаемого элемента меню.
Возвращаемое значение
Указатель на объект, соответствующий CMFCToolBarButton
индексу, указанному iItem. Значение NULL, если индекс недопустим.
CMFCMenuBar::GetRowHeight
virtual int GetRowHeight() const;
Возвращаемое значение
Замечания
CMFCMenuBar::GetSystemButton
CMFCToolBarMenuButtonsButton* GetSystemButton(
UINT uiBtn,
BOOL bByCommand = TRUE) const;
Параметры
[in] uiBtn
[in] bByCommand
Возвращаемое значение
Замечания
CMFCMenuBar::GetSystemButtonsCount
int GetSystemButtonsCount() const;
Возвращаемое значение
Замечания
CMFCMenuBar::GetSystemMenu
CMFCToolBarSystemMenuButton* GetSystemMenu() const;
Возвращаемое значение
Замечания
CMFCMenuBar::HighlightDisabledItems
Определяет, выделена ли платформа отключенными элементами меню.
static void HighlightDisabledItems(BOOL bHighlight = TRUE);
Параметры
bHighlight
[in] Логический параметр, указывающий, выделена ли платформа недоступными элементами меню.
Замечания
По умолчанию платформа не выделяет недоступные элементы меню, когда пользователь помещает указатель мыши на них.
CMFCMenuBar::IsButtonExtraSizeAvailable
virtual BOOL IsButtonExtraSizeAvailable() const;
Возвращаемое значение
Замечания
CMFCMenuBar::IsHighlightDisabledItems
Указывает, выделена ли платформа недоступными элементами меню.
static BOOL IsHighlightDisabledItems();
Возвращаемое значение
Значение TRUE, если элементы меню недоступны; в противном случае ЗНАЧЕНИЕ FALSE.
Замечания
По умолчанию платформа не выделяет недоступные элементы меню, когда пользователь помещает указатель мыши на них. Используйте метод CMFCMenuBar::HighlightDisabledItems, чтобы включить эту функцию.
CMFCMenuBar::IsMenuShadows
Указывает, рисует ли платформа тени для всплывающих меню.
static BOOL IsMenuShadows();
Возвращаемое значение
ЗНАЧЕНИЕ TRUE, если платформа рисует тени меню; в противном случае ЗНАЧЕНИЕ FALSE.
Замечания
Используйте метод CMFCMenuBar::EnableMenuShadows, чтобы включить или отключить эту функцию.
CMFCMenuBar::IsRecentlyUsedMenus
Указывает, отображаются ли недавно используемые команды меню в строке меню.
static BOOL IsRecentlyUsedMenus();
Возвращаемое значение
Ненулевое CMFCMenuBar
значение, если объект отображает недавно используемые команды меню; в противном случае — значение 0.
Замечания
Используйте функцию CMFCMenuBar::SetRecentlyUsedMenus для управления отображением недавно используемых команд меню.
CMFCMenuBar::IsShowAllCommands
Указывает, отображаются ли меню все команды.
static BOOL IsShowAllCommands();
Возвращаемое значение
Ненулевое значение, если отображается CMFCMenuBar
все команды; в противном случае — значение 0.
Замечания
Объект CMFCMenuBar
можно настроить для отображения всех команд или отображения только подмножества команд. Дополнительные сведения об этой функции см. в разделе "Класс CMFCMenuBar".
IsShowAllCommands
вы узнаете, как эта функция настроена для CMFCMenuBar
объекта. Для управления командами меню используйте методы CMFCMenuBar::SetShowAllCommands и CMFCMenuBar::SetRecentlyUsedMenus.
CMFCMenuBar::IsShowAllCommandsDelay
Указывает, отображает ли объект CMFCMenuBar все команды после короткой задержки.
static BOOL IsShowAllCommandsDelay();
Возвращаемое значение
Ненулевое значение, если в строке меню отображаются полные меню после короткой задержки; в противном случае — 0.
Замечания
При настройке строки меню для отображения недавно использованных элементов в строке меню отображается полное меню одним из двух способов:
Отображение полного меню после запрограммированного задержки, когда пользователь наведите курсор на стрелку в нижней части меню.
Отображение полного меню после того, как пользователь щелкает стрелку в нижней части меню.
По умолчанию все CMFCMenuBar
объекты используют параметр для отображения полного меню после короткой задержки. Этот параметр нельзя изменить программным способом CMFCMenuBar
в классе. Однако пользователь может изменить поведение во время настройки панели инструментов с помощью диалогового окна "Настройка ".
CMFCMenuBar::LoadState
Загружает состояние строки меню из реестра Windows.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
Параметры
lpszProfileName
[in] Строка, содержащая путь к разделу реестра Windows.
nIndex
[in] Идентификатор элемента управления для строки меню.
uiID
[in] Зарезервированное значение.
Возвращаемое значение
ЗНАЧЕНИЕ TRUE, если метод выполнен успешно; в противном случае ЗНАЧЕНИЕ FALSE.
Замечания
Используйте метод CMFCMenuBar::SaveState, чтобы сохранить состояние строки меню в реестре. Сохраненные сведения включают элементы меню, состояние док-станции и положение строки меню.
В большинстве случаев приложение не вызывается LoadState
. Платформа вызывает этот метод при инициализации рабочей области.
CMFCMenuBar::OnChangeHot
virtual void OnChangeHot(int iHot);
Параметры
[in] iHot
Замечания
CMFCMenuBar::OnDefaultMenuLoaded
Платформа вызывает этот метод при загрузке ресурса меню из файла ресурсов.
virtual void OnDefaultMenuLoaded(HMENU hMenu);
Параметры
hMenu
[in] Дескриптор меню, присоединенного к объекту CMFCMenuBar
.
Замечания
Реализация по умолчанию этой функции не выполняет никаких действий. Переопределите эту функцию, чтобы выполнить пользовательский код после загрузки ресурса меню из файла ресурса.
CMFCMenuBar::OnSendCommand
virtual BOOL OnSendCommand(const CMFCToolBarButton* pButton);
Параметры
[in] pButton
Возвращаемое значение
Замечания
CMFCMenuBar::OnSetDefaultButtonText
Платформа вызывает этот метод, когда пользователь изменяет текст элемента в строке меню.
virtual BOOL OnSetDefaultButtonText(CMFCToolBarButton* pButton);
Параметры
pButton
[in] Указатель на объект CMFCToolBarButton , который пользователь хочет настроить.
Возвращаемое значение
ЗНАЧЕНИЕ TRUE, если платформа применяет изменения пользователя к строке меню; в противном случае ЗНАЧЕНИЕ FALSE.
Замечания
Реализация по умолчанию для этого метода изменяет текст кнопки на текст, который предоставляет пользователь.
CMFCMenuBar::OnToolHitTest
virtual INT_PTR OnToolHitTest(
CPoint point,
TOOLINFO* pTI) const;
Параметры
[in] точка
[in] pTI
Возвращаемое значение
Замечания
CMFCMenuBar::P reTranslateMessage
virtual BOOL PreTranslateMessage(MSG* pMsg);
Параметры
[in] pMsg
Возвращаемое значение
Замечания
CMFCMenuBar::RestoreOriginalstate
Вызывается платформой, когда пользователь выбирает сброс из диалогового окна "Настройка ".
virtual BOOL RestoreOriginalstate();
Возвращаемое значение
Ненулевое значение, если метод выполнен успешно; в противном случае — 0.
Замечания
Этот метод вызывается, когда пользователь выбирает сброс из меню настройки. Вы также можете вручную вызвать этот метод, чтобы программно сбросить состояние строки меню. Этот метод загружает исходное состояние из файла ресурса.
Переопределите этот метод, если вы хотите выполнить любую обработку, когда пользователь выбирает параметр сброса.
CMFCMenuBar::SaveState
Сохраняет состояние объекта CMFCMenuBar в реестре Windows.
virtual BOOL SaveState (
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
Параметры
lpszProfileName
[in] Строка, содержащая путь к разделу реестра Windows.
nIndex
[in] Идентификатор элемента управления для строки меню.
uiID
[in] Зарезервированное значение.
Возвращаемое значение
Значение TRUE, если выполнено успешно; в противном случае значение FALSE;
Замечания
Как правило, приложение не вызывается SaveState
. Платформа вызывает этот метод при сериализации рабочей области. Дополнительные сведения см. в разделе CWinAppEx::SaveState.
Сохраненные сведения включают элементы меню, состояние док-станции и положение строки меню.
CMFCMenuBar::SetDefaultMenuResId
Задает меню по умолчанию для объекта CMFCMenuBar на основе идентификатора ресурса.
void SetDefaultMenuResId(UINT uiResId);
Параметры
uiResId
[in] Идентификатор ресурса для нового меню по умолчанию.
Замечания
Метод CMFCMenuBar::RestoreOriginalstate восстанавливает меню по умолчанию из файла ресурса.
Используйте метод CMFCMenuBar::GetDefaultMenuResId, чтобы получить меню по умолчанию, не восстанавливая его.
CMFCMenuBar::SetForceDownArrows
void SetForceDownArrows(BOOL bValue);
Параметры
[in] bValue
Замечания
CMFCMenuBar::SetMaximizeMode
Платформа вызывает этот метод, когда MDI изменяет режим отображения, а строка меню должна быть обновлена.
void SetMaximizeMode(
BOOL bMax,
CWnd* pWnd = NULL,
BOOL bRecalcLayout = TRUE);
Параметры
bMax
[in] Логическое значение, указывающее режим. Дополнительные сведения см. в разделе «Примечания».
pWnd
[in] Указатель на дочернее окно MDI, которое изменяется.
bRecalcLayout
[in] Логическое значение, указывающее, следует ли пересчитывать макет строки меню немедленно.
Замечания
Если дочернее окно MDI развернуто, панель меню, подключенная к главного окна MDI, отображает системное меню и кнопки "Свернуть", "Развернуть" и "Закрыть". Если значение bMax равно TRUE и pWnd не равно NULL, то дочернее окно MDI развернуто, а строка меню должна включать дополнительные элементы управления. В противном случае строка меню возвращается в обычное состояние.
CMFCMenuBar::SetMenuButtonRTC
Задает сведения о классе среды выполнения, используемые платформой при создании кнопок меню пользователя.
void SetMenuButtonRTC(CRuntimeClass* pMenuButtonRTC);
Параметры
pMenuButtonRTC
[in] Сведения CRuntimeClass для класса, производного от класса CMFCMenuButton.
Замечания
Когда пользователь добавляет новые кнопки в строку меню, платформа динамически создает кнопки. По умолчанию он создает CMFCMenuButton
объекты. Переопределите этот метод, чтобы изменить тип объектов кнопки, создаваемых платформой.
CMFCMenuBar::SetMenuFont
Задает шрифт для всех строк меню в приложении.
static BOOL SetMenuFont(
LPLOGFONT lpLogFont,
BOOL bHorz = TRUE);
Параметры
lpLogFont
[in] Указатель на структуру LOGFONT , которая определяет заданный шрифт.
bHorz
[in] ЗНАЧЕНИЕ TRUE, если требуется , чтобы параметр lpLogFont использовался для вертикального шрифта, значение FALSE, если вы хотите использовать его для горизонтального шрифта.
Возвращаемое значение
ЗНАЧЕНИЕ TRUE, если метод выполнен успешно; в противном случае ЗНАЧЕНИЕ FALSE.
Замечания
Для всех CMFCMenuBar
объектов используются два шрифта. Эти отдельные шрифты используются для горизонтальных и вертикальных строк меню.
Параметры шрифта являются глобальными переменными и влияют на все CMFCMenuBar
объекты.
CMFCMenuBar::SetRecentlyUsedMenus
Определяет, отображает ли строка меню недавно использованные команды меню.
static void SetRecentlyUsedMenus (BOOL bOn = TRUE);
Параметры
бон
[in] Логическое значение, которое определяет, отображаются ли недавно используемые команды меню.
CMFCMenuBar::SetShowAllCommands
Определяет, отображает ли меню все доступные команды.
static void SetShowAllCommands(BOOL bShowAllCommands = TRUE);
Параметры
bShowAllCommands
[in] Логический параметр, указывающий, отображает ли всплывающее меню все команды меню.
Замечания
Если меню не отображает все команды меню, она скрывает команды, которые редко используются. Дополнительные сведения о отображении команд меню см. в разделе "Класс CMFCMenuBar".