AppendMenu

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

Функция AppendMenu была заменена функцией InsertMenuItem . Можно использовать AppendMenu, однако, если не требуется каких-либо расширенных функций InsertMenuItem.

 (BOOL AppendMenu HMENU  hMenu, / / обработать для меню, чтобы изменитьUINTuFlags, / / флаги пункт менюUINTuIDNewItem, / / идентификатор элемента меню или дескриптор меню или подменюLPCTSTRlpNewItem / / содержимое элемента меню);
 

Параметры

hMenu
Дескриптор строки меню, меню, подменю или контекстное меню, чтобы изменить.
uFlags
Задает флаги для управления внешним видом и поведением нового пункта меню. Этот параметр может быть сочетанием значений, перечисленных в следующем разделе "Примечания".
uIDNewItem
Указывает идентификатор нового пункта меню или, если параметр uFlags имеет значение MF_POPUP, дескриптор в раскрывающемся меню или подменю.
lpNewItem
Указывает содержимое нового пункта меню. Интерпретация lpNewItem зависит ли параметр uFlags включает флаг MF_BITMAP, MF_OWNERDRAW или MF_STRING,:
Значение Описание
MF_BITMAP Содержит дескриптор точечного рисунка.
MF_OWNERDRAW Содержит 32-разрядное значение, приложения, которые могут использоваться для поддержания дополнительные данные, связанные с пунктом меню. Значение находится в ItemData отсутствует члена структуры, который указывает параметр lparam WM_MEASURE или WM_DRAWITEM сообщение, отправленное при создании меню или обновлении его внешний вид.
MF_STRING Содержит указатель на ограниченную значением null строку.

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

Если функция выполнена успешно, возвращаемое значение не равно нулю.

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

Примечания

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

Для того чтобы получить сочетания клавиш для работы с точечный рисунок или пункты меню, рисуемого владельцем, владелец меню необходимо обработать сообщение WM_MENUCHAR. Для получения дополнительной информации см. Owner-Drawn меню и WM_MENUCHAR сообщение.

Следующие флаги можно задать в параметре uFlags:

Значение Описание
MF_BITMAP Использует растровое изображение в качестве пункта меню. Параметр lpNewItem содержит дескриптор точечного.
MF_CHECKED Помещает флажок рядом с элементом меню. Если приложение предоставляет галочки растровые изображения (см. SetMenuItemBitmaps, этот флаг дисплеев, растровые флажок рядом с пунктом меню.
MF_DISABLED Отключает элемент меню, поэтому он не может быть выбран, но флаг не Грэй его.
MF_ENABLED Позволяет пункт меню, поэтому он может быть выбран и восстанавливает его из состояния неактивна.
MF_GRAYED Отключает элемент меню и grays, поэтому он не может быть выбран.
MF_MENUBARBREAK Функции же, как MF_MENUBREAK флаг для строки меню. Для меню, вложенного меню или контекстное меню новый столбец отделяется от старого столбца вертикальной линией.
MF_MENUBREAK Помещает элемент на новой линии (для строки меню) или в новом столбце (для раскрывающегося меню, вложенного меню или контекстное меню), без разделения столбцов.
MF_OWNERDRAW Указывает, что элемент является владельцем элемента. До того, как в первый раз появится меню, окно, которому принадлежит меню получает сообщение WM_MEASUREITEM получить ширину и высоту элемента меню. WM_DRAWITEM затем отправляется сообщение процедуре окна окна-владельца всякий раз, когда необходимо обновить внешний вид элемента меню.
MF_POPUP Указывает, что пункт меню открывает раскрывающееся меню или подменю. Параметр uIDNewItem указывает дескриптор в раскрывающемся меню или подменю. Этот флаг используется для добавления имя меню в строку меню или пункт меню, который открывает подменю, в раскрывающемся меню, вложенного меню или контекстное меню.
MF_SEPARATOR Рисует горизонтальную разделительную линию. Этот флаг используется только в раскрывающемся меню, вложенного меню или контекстное меню. Линия отображается серым цветом, отключена или невозможно выделены. Параметры lpNewItem и uIDNewItem игнорируются.
MF_STRING Указывает, что пункт меню является текстовой строкой; параметр lpNewItem указывает на строку.
MF_UNCHECKED Не установить флажок рядом с пунктом (по умолчанию). Если приложение передает галочки растровые изображения (см. SetMenuItemBitmaps), этот флаг отображается неконтролируемого растровых рядом с элементом меню.

Нельзя совместно использовать следующие группы флагов:

Windows CE: Для параметра fuFlags не поддерживаются следующие флаги

MF_BITMAP

MF_DISABLED

MFS_GRAYED

MF_GRAYED может использоваться вместо MF_DISABLED и MFS_GRAYED.

Windows CE 1.0 не поддерживает каскадные меню. Если вы используете Windows CE 1.0, MF_POPUP меню нельзя вставить в другое всплывающее меню.

В Windows CE 1.0 не поддерживаются следующие флаги:

MF_POPUP

MF_MENUBREAK

MF_MENUBARBREAK

В Windows CE версии 2.0 и более поздних поддерживаются эти флаги. Также поддерживаются каскадных меню.

Родственные слова

Меню Обзор функций меню, CreateMenu, DeleteMenu, DestroyMenu, DrawMenuBar, InsertMenu, InsertMenuItem, ModifyMenu, RemoveMenu, SetMenuItemBitmaps

Index