CheckMenuRadioItem function (winuser.h)

Checks a specified menu item and makes it a radio item. At the same time, the function clears all other menu items in the associated group and clears the radio-item type flag for those items.


BOOL CheckMenuRadioItem(
  [in] HMENU hmenu,
  [in] UINT  first,
  [in] UINT  last,
  [in] UINT  check,
  [in] UINT  flags


[in] hmenu


A handle to the menu that contains the group of menu items.

[in] first

Type: UINT

The identifier or position of the first menu item in the group.

[in] last

Type: UINT

The identifier or position of the last menu item in the group.

[in] check

Type: UINT

The identifier or position of the menu item to check.

[in] flags

Type: UINT

Indicates the meaning of idFirst, idLast, and idCheck. If this parameter is MF_BYCOMMAND, the other parameters specify menu item identifiers. If it is MF_BYPOSITION, the other parameters specify the menu item positions.

Return value

Type: BOOL

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, use the GetLastError function.


The CheckMenuRadioItem function sets the MFT_RADIOCHECK type flag and the MFS_CHECKED state for the item specified by idCheck and, at the same time, clears both flags for all other items in the group. The selected item is displayed using a bullet bitmap instead of a check-mark bitmap.

For more information about menu item type and state flags, see the MENUITEMINFO structure.


For an example, see Example of Example of Using Custom Checkmark Bitmaps.


Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header winuser.h (include Windows.h)
Library User32.lib
DLL User32.dll
API set ext-ms-win-ntuser-menu-l1-1-0 (introduced in Windows 8)

See also