Функция 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 |
Нет |
Замечания по платформе |
Не имеется |