Функция CheckMenuRadioItem

Declare Function CheckMenuRadioItem Lib "user32" ( _
    ByVal hmenu As Long, _
    ByVal idFirst As Long, _
    ByVal idLast As Long, _
    ByVal idCheck As Long, -
    ByVal uFlags As Long) As Long

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

hmenu
Описатель меню
idFirst
Идентификатор или позиция первого пункта меню в группе
idLast
Идентификатор или позиция последнего пункта меню в группе
idCheck
Идентификатор или позиция пункта меню, который отмечается
uFlags
Флаг, определяющий значения idFirst, idLast и idCheck. Если этот параметр равен MF_BYCOMMAND, другие параметры определяют идентификаторы пунктов меню. Если он равен MF_BYPOSITION, другие параметры определяют позиции пунктов меню

Пример

' Сначала создайте с помощью Menu Editor
' маленькую систему меню на Form1
Private Const MF_BYPOSITION = &H400&

Private Sub mnuFileItem1_Click()
    Dim lRet As Long
    Dim lngMenu As Long
    Dim lngSubMenu As Long
    Dim lhWnd
    lhWnd = Form1.hwnd
    lngMenu = GetMenu(lhWnd)
    lngSubMenu = GetSubMenu(lngMenu, 0)
    lRet = CheckMenuRadioItem(lngSubMenu, 0, 3, 0, MF_BYPOSITION)
End Sub

Private Sub mnuFileItem2_Click()
     Dim lRet As Long
    Dim lngMenu As Long
    Dim lngSubMenu As Long
    Dim lhWnd
    lhWnd = Form1.hwnd
    lngMenu = GetMenu(lhWnd)   '0 = error
    lngSubMenu = GetSubMenu(lngMenu, 0) '0 = error
    lRet = CheckMenuRadioItem(lngSubMenu, 0, 3, 1, MF_BYPOSITION)
End Sub

Private Sub mnuFileItem3_Click()
     Dim lRet As Long
    Dim lngMenu As Long
    Dim lngSubMenu As Long
    Dim lhWnd
    lhWnd = Form1.hwnd
    lngMenu = GetMenu(lhWnd)   '0 = error
    lngSubMenu = GetSubMenu(lngMenu, 0) '0 = error
    lRet = CheckMenuRadioItem(lngSubMenu, 0, 3, 2, MF_BYPOSITION)
End Sub

Смотри также

GetMenu

Категория

Меню

Реклама