Поделиться через


Функция SetMenuItemBitmaps (winuser.h)

Связывает указанное растровое изображение с элементом меню. Независимо от того, выбран ли элемент меню или снят, система отображает соответствующее растровое изображение рядом с элементом меню.

Синтаксис

BOOL SetMenuItemBitmaps(
  [in]           HMENU   hMenu,
  [in]           UINT    uPosition,
  [in]           UINT    uFlags,
  [in, optional] HBITMAP hBitmapUnchecked,
  [in, optional] HBITMAP hBitmapChecked
);

Параметры

[in] hMenu

Тип: HMENU

Дескриптор для меню, содержащего элемент для получения новых растровых рисунков проверка метки.

[in] uPosition

Тип: UINT

Элемент меню, который необходимо изменить, как определено параметром uFlags .

[in] uFlags

Тип: UINT

Указывает способ интерпретации параметра uPosition . Параметр uFlags должен иметь одно из следующих значений.

Значение Значение
MF_BYCOMMAND
0x00000000L
Указывает, что uPosition предоставляет идентификатор пункта меню. Если ни MF_BYCOMMAND , ни MF_BYPOSITION не указаны, MF_BYCOMMAND является флагом по умолчанию.
MF_BYPOSITION
0x00000400L
Указывает, что uPosition задает отсчитываемую от нуля относительную позицию элемента меню.

[in, optional] hBitmapUnchecked

Тип: HBITMAP

Дескриптор растрового изображения, отображаемого, если пункт меню не выбран.

[in, optional] hBitmapChecked

Тип: HBITMAP

Дескриптор растрового изображения, отображаемого при выборе пункта меню.

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

Тип: BOOL

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

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

Комментарии

Если параметр hBitmapUnchecked или hBitmapChecked имеет значение NULL, система не отображает ничего рядом с пунктом меню для соответствующего состояния проверка. Если оба параметра имеют значение NULL, система отображает растровое изображение по умолчанию проверка пометки при выборе элемента и удаляет растровое изображение, если элемент не выбран.

При уничтожении меню эти растровые изображения не уничтожаются; их уничтожение выполняется приложением.

Выбранные и понятные растровые изображения должны быть монохромными. Система использует оператор Boolean AND для объединения растровых изображений с меню, чтобы белая часть стала прозрачной, а черная — цветом пункта меню. При использовании цветных растровых изображений результаты могут быть нежелательными.

Используйте функцию GetSystemMetrics с SM_CXMENUCHECK и SM_CYMENUCHECK значениями для получения размеров растрового изображения.

Примеры

Пример см. в разделе Имитация флажок в меню.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll

См. также раздел

Меню