Параметр |
Описание |
MF_BITMAP |
Использует растр как пункт. Параметр lpNewItem содержит дескриптор растра. |
MF_CHECKED |
Помещает галочку рядом с пунктом. Если приложение обеспечивает растры для галочки (см. SetMenuItemBitmaps), этот флажок отображает растр галочки рядом с пунктом меню. |
MF_DISABLED |
Отключает пункт меню, чтобы он не мог быть выбран, но флажок на делает его серым. |
MF_ENABLED |
Дает возможность пункту меню быть выбраным и восстановливает его из отключенного состояния. |
MF_GRAYED |
Отключает пункт меню и подсвечивает его серым, так что он не может быть выбран. |
MF_MENUBARBREAK |
функции те же как MF_MENUBREAK за исключением всплывающих меню, где новый столбец отделяется от старого столбца вертикальной строкой. |
MF_MENUBREAK |
Помещает пункт в новую строку (для строкового меню) или в новом столбце (для всплывающих меню) без отделения столбцов. |
MF_OWNERDRAW |
Определяет, что пункт - отображается владельцем пункта. Прежде, чем меню впервые отображается, окно, которое обладает меню, получает WM_MEASUREITEM сообщение, чтобы отыскать ширину и высоту пункта меню. Затем посылается WM_DRAWITEM сообщение процедуре окна владельца всякий раз, когда пункт меню должен быть обновлен. |
MF_POPUP |
Определяет, что пункт меню - всплывающий пункт; то есть выбирая его активизируется всплывающее меню. Параметр uIDNewItem определяет дескриптор всплывающего меню. Этот флажок используется, чтобы добавить всплывающий пункт к строке меню или к всплывающему меню. |
MF_SEPARATOR |
Рисует горизонтальную разделительную линию. Этот флажок используется только во всплывающем меню. Строка не может быть недоступна, заблокирована, или высвечена. Параметры lpNewItem and uIDNewItem игнорируются. |
MF_STRING |
Определяет, что пункт меню - текстовая строка; lpNewItem указывает на строку. |
MF_UNCHECKED |
Не помещает галочку рядом с пунктом (значение по умолчанию). Если приложение обеспечивает растры галочки (см. SetMenuItemBitmaps), этот флажок отображает разотмеченный растр рядом с пунктом меню. |
Таблица 9
Следующий список показывает группы флажков, которые не могут использоваться вместе:
• MF_DISABLED, MF_ENABLED, и MF_GRAYED
• MF_BITMAP, MF_STRING, и MF_OWNERDRAW
• MF_MENUBARBREAK и MF_MENUBREAK
• MF_CHECKED и MF_UNCHECKED
См. Также
AppendMenu, DeleteMenu, DrawMenuBar, ModifyMenu, RemoveMenu, SetMenuItemBitmaps, WM_DRAWITEM, WM_MEASUREITEM
Функция SetMenu назначает новое меню для указанного окна.
BOOL SetMenu (
HWND hwnd, // дескриптор окна
HMENU hmenu // дескриптор меню
);
Параметры
hwnd
Идентифицирует окно
hmenu
Идентифицирует новое меню. Если этот параметр - NULL, текущее меню окна удалено.
Возвращаемое значение
В случае успешного завершения, возвращаемое значение - TRUE.
В случае неудачи, возвращаемое значение - FALSE. Чтобы получить расширенную информацию об ошибке, вызовите GetLastError.
Замечания
Окно должно быть перерисовано, чтобы отразить изменение в меню.
Функция SetMenu заменяет предыдущее меню, если оно есть в наличии, но не уничтожает его. Приложение должно вызвать функцию DestroyMenu, чтобы выполнить эту задачу.
См. Также
DestroyMenu, GetMenu
Функция DeleteMenu удаляет пункт из указанного меню. Если пункт меню вызывает всплывающее меню, эта функция уничтожает дескриптор всплывающего меню и освобождает память, используемую всплывающим меню.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.