Возвращаемые значения
Если указанного пункта меню не существует, возвращается 0 xFFFFFFFF .
Если пункт меню открывает подменю, младший байт возвращаемого значения содержит флаги меню, связанные с пунктом, а старший байт содержит число пунктов в подменю.
В остальных случаях возвращаемое значение является маской флагов меню. Ниже приведены флаги меню, связанные с пунктом меню:
Значение | Пояснение |
MF_CHECKED | Помещает отметку в пункт меню (только для выпадающих меню, меню быстрого вызова команд и подменю). |
MF_DISABLED | Запрещает пункт меню. |
MF_GRAYED | Запрещает пункт меню и делает его затененным. |
MF_HILITE | Подсвечивает пункт меню. |
MF_MENUBARBREAK | То же, что и флаг MF _ MENUBREAK, за исключением выпадающих меню, меню быстрого вызова команд и подменю, где новый столбец от старого столбца отделяется вертикальной чертой. |
MF_MENUBREAK | Помещает новый пункт в новой строке (для строк меню) или в новый столбец (для выпадающих меню, меню быстрого вызова команд и подменю) без разделения столбцов. |
MF_SEPARATOR | Создает горизонтальную разделяющую линию (для выпадающих меню, меню быстрого вызова команд и подменю). |
См. также
GetMenu, GetMenuItemCount, GetMenuItemID, GetMenuItemInfo, GetMenuString .
Функция SetMenuItemBitmaps связывает указанный битовый образ с пунктом меню. В зависимости от того, является ли пункт меню отмеченным или нет, Windows отображает соответствующий битовый образ в пункте меню.
BOOL SetMenuItemBitmaps (
HMENU hMenu , // дескриптор меню
UINT uPosition , // пункт меню для получения нового битового образа
UINT uFlags , // флаги пункта меню
HBITMAP hBitmapUnchecked , // дескриптор битового образа
// для неотмеченного состояния
HBITMAP hBitmapChecked // дескриптор битового образа
// для отмеченного состояния
);
Параметры
hMenu - идентифицирует меню, содержащее элемент, который получает новые битовые образы отмеченного и неотмеченного состояний.
uPosition - определяет подлежащий изменению пункт меню в соответствии со значением параметра uFlags .
uFlags - определяет, как интерпретируется значение параметра uPosition . Параметр uFlags должен быть одним из следующих значений:
Значение | Пояснение |
MF _ BYCOMMAND | Указывает, что значение uPosition представляет собой идентификатор пункта меню. Если не задан ни один из флагов, то используется флаг по умолчанию - MF _ BYCOMMAND . |
MF _ BYPOSITION | Указывает, что значение uPosition представляет собой относительную позицию пункта меню (отсчет позиции начинается с нуля). |
hBitmapUnchecked - идентифицирует битовый образ, отображаемый, когда пункт меню не отмечен.
hBitmapChecked - идентифицирует битовый образ, отображаемый, когда пункт меню отмечен.
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке, вызовите функцию GetLastError .
Комментарии
Если значение параметра hBitmapUnchecked или hBitmapChecked равно NULL, Windows ничего не отображает в соответствующем пункте меню для соответствующего состояния. Если значения обоих параметров равны NULL, то Windows отображает стандартный битовый образ отметки, соответствующей отмеченному состоянию, и убирает битовый образ, когда пункт меню не отмечен.
При разрушении меню эти битовые образы не разрушаются: их должно разрушить приложение.
Windows NT : Функция GetMenuCheckMarkDimensions извлекает размеры отметки по умолчанию, используемой для пунктов меню. Эти значения используются для определения соответствующих размеров битовых образов, используемых функцией SetMenuItemBitmaps .
Windows 95: Функция GetMenuCheckMarkDimensions устарела . Используйте функцию GetsystemMetrics с параметрами CXMENUCHECK и CYMENUCHECK для извлечения размеров битовых образов.
См. также
GetMenu, GetMenuCheckMarkDimensions .