HMENU CreatePopupMenu ( VOID )

Параметры

Функция не имеет параметров.

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

В случае успеха возвращается дескриптор созданного меню.

В случае неудачи возвращается NULL .

Комментарии

Приложение может добавить новое меню в существующее меню, или оно может отобразить меню быстрого вызова, используя функции TrackPopupMenu или TrackPopupMenuEx .

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

Windows 95: Система может поддерживать максимум 16384 дескрипторов меню.

См. также

AppendMenu, CreateMenu, DestroyMenu, InsertMenu, SetMenu, TrackPopupMenu, TrackPopupMenuEx, InsertMenuItem .

<p>DeleteMenu</p>

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

BOOL DeleteMenu (

HMENU hMenu , // дескриптор меню

UINT uPosition , // идентификатор или позиция пункта меню

UINT uFlags // флаг пункта меню

);

Параметры

hMenu - идентифицирует меню.

uPosition - задает удаляемый пункт меню, согласно значению параметра uFlags .

uFlags - определяет, каким образом интерпретируется значение параметра uPosition . Параметр uFlags должен принимать одно из следующих значений:

Значение

Пояснение

MF_BYCOMMAND

Указывет, что uPosition принимает идентификатор пункта меню. Флаг MF_BYCOMMAND явялется флагом по умолчанию, если явно не задан ни флаг MF_BYCOMMAND, ни MF_BYPOSITION.

MF_BYPOSITION

Указывает, что uPosition принимает относительную, отсчитываемую от нуля позицию пункта меню.

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

В случае успеха возвращается ненулевое значение.

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

Комментарии

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

См . также

DrawMenuBar, RemoveMenu .

<p>GetMenuCheckMarkDimensions</p>

Функция является устаревшей. Используйте GetSystemMetrics со значениями CXMENUCHECK и CYMENUCHECK для извлечения размеров битового образа.

Функция GetMenuCheckMarkDimensions возвращает размеры битового образа отметки по умолчанию пункта меню. Windows отображает этот битовый образ в пункте меню. Перед вызовом функции SetMenuItemBitmaps для изменения битового образа отметки для пункта меню, приложение должно определить корректный размер образа, вызвав GetMenuCheckMarkDimensions .

LONG GetMenuCheckMarkDimensions ( VOID )

Параметры

Функция не имеет параметров.

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

Возвращаемое значение определяет высоту и ширину битового образа отметки по умолчанию в пикселях. Старшее слово содержит высоту, младше слово содержит ширину.

См. также

SetMenuItemBitmaps .

<p>GetMenuItemCount</p>

Функция GetMenuItemCount определяет количество пунктов в указанном меню.

int GetMenuItemCount (

HMENU hMenu // дескриптор меню

);

Параметры

hMenu - определяет дескриптор меню, для которого будет определяться количество пунктов .

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

В случае успеха возвращаемое значение определяет количество пунктов в меню.

В случае неудачи возвращается -1. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

См . также

GetMenuItemID .

<p>GetMenuItemID</p>

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

UINT GetMenuItemID (

HMENU hMenu , // дескриптор меню

int nPos // позиция пункта меню

);

Параметры

hMenu - идентифицирует меню, содержащее пункт меню, идентификатор которого извлекается.

nPos - определяет относительную позицию (отсчет начинается с нуля) пункта меню, идентификатор которого извлекается.

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

В случае успеха возвращается идентификатор данного пункта меню.

Перейти на страницу:

Похожие книги