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


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

Изменяет сведения о элементе меню.

Синтаксис

BOOL SetMenuItemInfoA(
  [in] HMENU            hmenu,
  [in] UINT             item,
       BOOL             fByPositon,
  [in] LPCMENUITEMINFOA lpmii
);

Параметры

[in] hmenu

Тип: HMENU

Дескриптор меню, содержащий элемент меню.

[in] item

Тип: UINT

Идентификатор или положение элемента меню для изменения. Значение этого параметра зависит от значения fByPosition.

fByPositon

[in] lpmii

Тип: LPMENUITEMINFO

Указатель на структуру MENUITEMINFO, которая содержит сведения о элементе меню и указывает, какие атрибуты элемента меню необходимо изменить.

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

Тип: BOOL

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

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

Замечания

Приложение должно вызывать функцию DrawMenuBar всякий раз при изменении меню, находится ли меню в отображаемом окне.

Чтобы ускорители клавиатуры работали с растровым изображением или элементами меню, нарисованным владельцем, владелец меню должен обработать сообщение WM_MENUCHAR. Дополнительные сведения см. в меню Owner-Drawn и сообщения WM_MENUCHAR.

Примеры

Пример см. в примере Owner-Drawn элементов меню.

Заметка

Заголовок winuser.h определяет SetMenuItemInfo как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll
набор API ext-ms-win-ntuser-menu-l1-1-0 (представлено в Windows 8)

См. также

концептуальные

DrawMenuBar

GetMenuItemInfo

MENUITEMINFO

меню

Справочник