La Red de Conocimientos Pedagógicos - Conocimientos primarios - Cómo utilizar SetMenuItemInfo para implementar la función de ModifyMenu

Cómo utilizar SetMenuItemInfo para implementar la función de ModifyMenu

Uso de 'SetMenuItemInfo

¿Privado?Const?MFT_RADIOCHECK?=?&H200&

Privado?Const?MIIM_TYPE?=?&H10

Privado ?Const?MIIM_SUBMENU?=?&H4

¿Privado?Tipo?MENUITEMINFO cbTamaño?As?Long fMáscara?As?Long fTipo?As?Long fEstado?As?Long wID?As?Long hSubMenu?As?Long ¿hbmpChecked?As?Long hbmpUnchecked?As?Long dwItemData?As?Long dwTypeData?As?String cch?As?Long

Fin?Tipo

¿Privado?Declarar?Función?GetMenu? Lib?"user32"?(ByVal?hwnd?As?Long)?As?Long

¿Privado?Declarar?Función?GetMenuItemInfo?Lib?"user32"?Alias?"GetMenuItemInfoA"?(ByVal?hMenu ?As?Long,?ByVal?un?As?Long,?ByVal?b?As?Boolean,?lpmii?As?MENUITEMINFO)?As?Long

¿Privado?Declarar?Función?SetMenuItemInfo?Lib ?"user32"?Alias?"SetMenuItemInfoA"?(ByVal?hMenu?As?Long,?ByVal?uItem?As?Long,?ByVal?fByPosition?As?Long,?lpmii?As?MENUITEMINFO)?As?Long

¿Privado?¿Declarar?Función?GetSubMenu?Lib?"usuario32"?(ByVal?hMenu?As?Long,?ByVal?nPos?As?Long)?As?Long

Privado ?Sub?Form_Load()

'URL:?

'E-Mail:?KPDTeam@allapi.net

Dim?hMenu?As?Long, ?hSubMenu?As?Long,?MII?As?MENUITEMINFO

'obtener?el?identificador?del?menú?actual

hMenu?=?GetMenu(Me.hwnd )

'obtener?el?identificador?del?primer?submenú

hSubMenu?=?GetSubMenu(hMenu,?0)

'inicializar? la?estructura

MII.cbSize?=?Len(MII)

MII.fMask?=?MIIM_SUBMENU

'recuperar?información?sobre?la? menu?item

GetMenuItemInfo?hSubMenu,?0,?True,?MII

Si?MII.hSubMenu?<>?0?The

n

¿MsgBox?"El?elemento?de?menú?especificado?tiene?un?submenú."

Else

¿MsgBox?"¿El?menú?especificado? ¿El elemento? no? ?de?una?marca de verificación

MII.fMask?=?MIIM_TYPE

MII.fType?=?MFT_RADIOCHECK

MII.dwTypeData?=?mnuFileMenuItem .Caption

SetMenuItemInfo?hSubMenu,?0,?True,?MII

Fin?Sub

Privado?Sub?mnuFileMenuItem_Click()

'si?marcado?entonces?desmarcar

'si?desmarcado?entonces?marcar

mnuFileMenuItem.Checked?=?No?(mnuFileMenuItem.Checked)

Fin?Sub