Функция SetMenuItemBitmaps


Функция SetMenuItemBitmaps связывает заданный точечный рисунок (значок) с пунктом меню. Выбран ли пункт меню или нет, система показывает на экране соответствующий значок рядом с пунктом меню.

Синтаксис

BOOL SetMenuItemBitmaps(
    HMENU hMenu,
    UINT uPosition,
    UINT uFlags,
    HBITMAP hBitmapUnchecked,
    HBITMAP hBitmapChecked
); 

Параметры

hMenu

[in] Дескриптор меню, содержащего пункт, который примет новый новый значок  "галочки".

uPosition

[in] Устанавливает пункт меню, который изменится, как определено параметром uFlags.

uFlags

[in] Устанавливает, как интерпретировать параметр uPosition. Параметр uFlags  должен быть одним из ниже перечисленных значений.
Значение Предназначение
MF_BYCOMMAND Указывает, что uPosition дает идентификатор пункта меню. Если не установлен ни флажок MF_BYCOMMAND, ни флажок MF_BYPOSITION, то флажок MF_BYCOMMAND является  заданным по умолчанию. 
MF_BYPOSITION Указывает, что uPosition дает отсчитываемую от нуля относительную позицию пункта меню.  

hBitmapUnchecked

[in] Дескриптор значка, который отображается, когда пункт меню не выбран.

hBitmapChecked

[in] Дескриптор значка, который отображается, когда пункт меню выбран.

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

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

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

Замечания

Если, или параметр hBitmapUnchecked, или hBitmapChecked  имеют значение ПУСТО (NULL), система  ничего не показывает на экране рядом с пунктом меню для соответствующего состояния "галочки". Если оба параметра -  ПУСТО (NULL), система показывает на экране заданный по умолчанию значок "галочки ", когда пункт выбирается, и удаляет значок, когда пункт не выбран.

Когда меню разрушается, эти точечные рисунки (значки) не разрушаются; это забота приложения, чтобы уничтожить их.

Значки выбора и сброса отметки  должны быть одноцветными. Система использует Булев оператор И (AND), чтобы комбинировать значки меню так, чтобы белая часть стала прозрачной, а черная часть становилась цветом пункта меню. Если Вы используете цветные точечные рисунки (значки), результаты  могут быть непредсказуемые.

Используйте функцию GetSystemMetrics со значениями CXMENUCHECK и CYMENUCHECK, чтобы извлекать размеры значка.

Пример

Пример смотри в статье Моделирование окошек меток в меню.

Смотри также

Краткий обзор Меню

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

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

User32.lib

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz