- '*****************************************
- ' Dans la partie déclaration du formulaire
- '*****************************************
- Private Const MF_BYPOSITION = &H400&
-
- 'Cette fonction API sert à prendre le menu qui apparaît lors du clic en haut à gauche du form (sous-menus "Restaurer", "Déplacer", "Réduire", "Fermer", ...)
- Private Declare Function GetSystemMenu _
- Lib "user32" _
- (ByVal hwnd As Long, _
- ByVal bRevert As Long) As Long
-
- 'Cette fonction API sert à enlever un de ces sous-menus
- Private Declare Function RemoveMenu _
- Lib "user32" (ByVal hMenu As Long, _
- ByVal nPosition As Long, _
- ByVal wFlags As Long) As Long
-
- 'Cette fonction API sert à connaître le nombre de sous-menus dans ce même menu
- Private Declare Function GetMenuItemCount _
- Lib "user32" _
- (ByVal hMenu As Long) As Long
-
-
-
- '*******************************************
- ' Dans la partie programmation du formulaire
- '*******************************************
- Public Sub DesactiverX(f_hwnd As Long)
-
- Dim lSysMenu As Long
- Dim lItemCount As Long
- Dim lRet As Long
-
- 'Prend l'ID du menu
- lSysMenu = GetSystemMenu(f_hwnd, False)
-
- 'Prend le nombre d'objet (sous-menus) du menu
- lItemCount = GetMenuItemCount(lSysMenu)
-
- 'Suppression de sous-menu
- lRet = RemoveMenu(lSysMenu, lItemCount - 1, MF_BYPOSITION)
- lRet = RemoveMenu(lSysMenu, lItemCount - 2, MF_BYPOSITION)
- lRet = RemoveMenu(lSysMenu, lItemCount - 3, MF_BYPOSITION)
- lRet = RemoveMenu(lSysMenu, lItemCount - 4, MF_BYPOSITION)
-
- End Sub
-
-
'*****************************************
' Dans la partie déclaration du formulaire
'*****************************************
Private Const MF_BYPOSITION = &H400&
'Cette fonction API sert à prendre le menu qui apparaît lors du clic en haut à gauche du form (sous-menus "Restaurer", "Déplacer", "Réduire", "Fermer", ...)
Private Declare Function GetSystemMenu _
Lib "user32" _
(ByVal hwnd As Long, _
ByVal bRevert As Long) As Long
'Cette fonction API sert à enlever un de ces sous-menus
Private Declare Function RemoveMenu _
Lib "user32" (ByVal hMenu As Long, _
ByVal nPosition As Long, _
ByVal wFlags As Long) As Long
'Cette fonction API sert à connaître le nombre de sous-menus dans ce même menu
Private Declare Function GetMenuItemCount _
Lib "user32" _
(ByVal hMenu As Long) As Long
'*******************************************
' Dans la partie programmation du formulaire
'*******************************************
Public Sub DesactiverX(f_hwnd As Long)
Dim lSysMenu As Long
Dim lItemCount As Long
Dim lRet As Long
'Prend l'ID du menu
lSysMenu = GetSystemMenu(f_hwnd, False)
'Prend le nombre d'objet (sous-menus) du menu
lItemCount = GetMenuItemCount(lSysMenu)
'Suppression de sous-menu
lRet = RemoveMenu(lSysMenu, lItemCount - 1, MF_BYPOSITION)
lRet = RemoveMenu(lSysMenu, lItemCount - 2, MF_BYPOSITION)
lRet = RemoveMenu(lSysMenu, lItemCount - 3, MF_BYPOSITION)
lRet = RemoveMenu(lSysMenu, lItemCount - 4, MF_BYPOSITION)
End Sub