11.19.1.37 - Функция InsertMenu

(ВставитьМеню)

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

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

Синтаксис

BOOL InsertMenu(
	HMENU hMenu,			// дескриптор меню
	UINT uPosition,		// пункт меню,который предшествует новому пункту меню
	UINT uFlags,		// флажки пункта меню
	UINT uIDNewItem,		// идентификатор меню пункта или выскакивающего меню или подменю
	LPCTSTR lpNewItem		// содержание пункта меню
);

Параметры
hMenu
Идентифицирует меню, которое будет изменено.
uPosition
Определяет пункт меню, перед которым должен быть вставлен новый пункт меню, как обусловлено параметром uFlags.
uFlags
Устанавливает флажки, которые управляют интерпретацией параметра uPosition и содержанием, внешним видом и поведением нового пункта меню. Этот параметр должен быть комбинацией одного из ниже перечисленных значений и, по крайней мере, одного из значений, перечисленных в следующем разделе Замечаний:

uIDNewItem
Определяет или идентификатор нового пункта меню или, если параметр uFlags имеет установленный флажок MF_POPUP, дескриптор "выскакивающего" меню или подменю.
lpNewItem
Определяет содержание нового пункта меню. Интерпретация lpNewItem зависит от того, включает ли параметр uFlags в себя флажок MF_BITMAP, MF_OWNERDRAW или MF_STRING, как ниже указано:

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

Замечания
Прикладная программа должна вызывать функцию DrawMenuBar всякий раз, когда меню изменяется, независимо от того, находится оно или нет в отображаемом окне.
Нижеследующий список описывает флажки, которые могут быть установлены в параметре uFlags:

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

MF_BYCOMMAND и MF_BYPOSITION
MF_DISABLED, MF_ENABLED и MF_GRAYED
MF_BITMAP, MF_STRING, MF_OWNERDRAW и MF_SEPARATOR
MF_MENUBARBREAK и MF_MENUBREAK
MF_CHECKED и MF_UNCHECKED

Смотри также
AppendMenu, DeleteMenu, DrawMenuBar, InsertMenuItem, ModifyMenu, RemoveMenu, SetMenuItemBitmaps, WM_DRAWITEM, WM_MEASUREITEM

Размещение и совместимость InsertMenu

Windows NT			Да 
Win95				Да 
Win32s				Да 
Импортируемая библиотека		user32.lib 
Заголовочный файл			winuser.h 
Unicode				WinNT
Замечания по платформе		Не имеется

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Владимир Соковиков - 15.10.2002