InsertMenu

Функция InsertMenu вставляет новый пункт меню в меню, другие элементы при перемещении вниз в меню.

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

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

Параметры

hMenu
Дескриптор меню, чтобы изменить.
uPosition
Определяет элемент меню, перед которым новый пункт меню должен быть вставлен, как определено в параметре uFlags.
uFlags
Указывает флаги, которые управляют интерпретации параметра uPosition и содержание, внешний вид и поведение нового пункта меню. Этот параметр должен быть одной из следующих требуемые значения и по крайней мере одно из значений, перечисленных в следующем разделе "Примечания".
Значение Описание
MF_BYCOMMAND Указывает, что параметр uPosition дает идентификатор элемента меню. Флаг MF_BYCOMMAND является значением по умолчанию, если указано ни MF_BYCOMMAND, ни MF_BYPOSITION флаг.
MF_BYPOSITION Указывает, что параметр uPosition дает с нуля относительное положение нового пункта меню. Если uPosition 0xFFFFFFFF, новый пункт меню добавляется в конец меню.

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

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

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

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

Примечания

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

В следующем списке описываются флаги, которые можно задать в параметре 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: Windows CE не поддерживает MF_BITMAP или MF_DISABLED флаг в параметре uFlags . Элементы меню нельзя отключить без быть серым цветом. Чтобы отключить пункт меню использовать флаг MF_GRAYED.

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

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

Меню Обзор функций меню, AppendMenu, DeleteMenu, DrawMenuBar, InsertMenuItem, ModifyMenu, RemoveMenu, SetMenuItemBitmaps, WM_DRAWITEM, WM_MEASUREITEM

Index