Меню. Главные меню и всплывающие меню, страница 3

CheckMenultem                                 + Windows 98   * Windows 2000

Описание

Функция CheckMenultem ставит или снимает отметку на пункте меню. Обычно отметки применяются для обозначения того, что опция переведена в активное или неактивное состояние. При большом числе опций для удобства выбора применяется диалоговое окно с переключателями и флажками. Чтобы придать меню внешний вид переключателя, можно воспользоваться функцией CheckMenuRadioItem.

Синтаксис

DWORD CheckMenuItem( HMENU hmenu, UINT idCheckltem, UINT uFlags )

Параметры

hMenu

HMENU. Дескриптор меню.

idCheckhem

UINT. Идентификатор меню, на котором должна быть установлена или снята отметка.

uFlags

UINT. Указывает, как должна быть выполнена команда. Для получения параметра uFlags  всегда объединяются с помощью двоичного оператора OR (|) две из четырех опций, показанных в табл. 6.3. (Иными словами, либо MF_BYCOMMAND, либо MF_BYPOSITION всегда объединяется либо с MFS_CHECKED, либо с MFS_UNCHECKED.)

Таблица 6.3. ЗначенияпараметровuFlags функцииCheckMenultem

 

Значение

Описание

 

MF BYCOMMAND

Значение в idCheckltem представляет собой идентификатор пункта меню.

 

MF_BYPOSITION

Значение в idCheckltem представляет собой относительную позицию пункта меню с отсчетом от нуля.

 

MF_CHECKED

Поместить отметку рядом с пунктом меню.

 

MF UNCHECKED

Этот пункт меню не имеет отметки.

 

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

DWORD. Предыдущее состояние пункта меню (MF_CHECKED или MF_UNCHECKED). Если пункт меню не существует, возвращаемое значение - OxFFFFFFFF (-1).

 

Включаемый файл

winuser.h

 

См. также

CheckMenuRadioItem, GetMenuItemlnfo, EnableMenuItem, SetMenuItemlnfo

 

Соответствующие сообщения

 

WM_MENUSELECT

 

Пример

В следующем примере пункт меню IDM_ITEM1 переключается между отмеченным и неотмеченным состоянием при каждом его выборе. Для определения состояния пункта меню применяется функция GetMenuState.

 

См.    \local-sources\chap06\06-03. txt

 

CheckMenuR.

adioltem                           • Windows 98   •  Windows 2000

 

Описание

Функция CheckMenuRadioItem отмечает указанный пункт меню переключателем и снимает отметку со всех других опций меню в указанной группе. Функция CheckMenuRadioItem обеспечивает работу группы пунктов меню по такому же принципу, как работает группа переключателей.

 

Синтаксис

BOOL CheckMenuRadioItem( HMENU hMenu, UINT idFirst, UINT idLast, UINT idCheck, UINT uFlags )

 

Параметры

 

hMenu

HMENU. Дескриптор меню, которое содержит группу пунктов меню.

 

idFirst

UINT. Первый пункт меню в группе.

 

idLast

UINT. Последний пункт меню в группе.

 

idCheck

UINT. Пункт меню, который должен быть отмечен.

 

uFlags

UINT. Определяет смысл параметров idFirst, idLast и idCheck. Если параметр uFlags равен MF_BYCOMMAND, то эти параметры указывают идентификаторы пункта меню; если параметр uFlags равен MF_BYPOSITION, эти параметры указывают позиции пункта меню.

 

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

BOOL. В случае успешного выполнения возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE.

 

Включаемый файл

winuser.h

 

См. также

GetMenuItemlnfo, SetMenuItemlnfo

 

Пример

В следующим примере (рис. 6.2) показано, как использовать группу пунктов меню в качестве набора взаимно исключающих опций. Это значит, что одновременно можно отметить только одну опцию меню в списке. Это функциональное средство аналогично группам переключателей, применяемым в диалоговых окнах.