- Public Declare Function DrawMenuBar Lib "user32" (ByVal Hwnd As Long) As Long
- Public Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
- Public Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
- Public Declare Function GetSystemMenu Lib "user32" (ByVal Hwnd As Long, ByVal bRevert As Long) As Long
- Public Const MF_BYPOSITION = &H400
- Public Const MF_REMOVE = &H1000
- Public Function fctSupprimerFermerMenuSysteme(ByVal plngHwnd As Long) As Long
- Dim lngHmenu As Long
- Dim lngNombreElement As Long
-
- lngHmenu = GetSystemMenu(plngHwnd, 0)
- If lngHmenu Then
- lngNombreElement = GetMenuItemCount(lngHmenu)
-
- ' Suppression de l'élément Fermer
- Call RemoveMenu(lngHmenu, lngNombreElement - 1, MF_REMOVE Or MF_BYPOSITION)
-
- ' Suppression du séparateur
- Call RemoveMenu(lngHmenu, lngNombreElement - 2, MF_REMOVE Or MF_BYPOSITION)
-
- ' On redessine le menu
- Call DrawMenuBar(plngHwnd)
- End If
- End Function
-
-
Public Declare Function DrawMenuBar Lib "user32" (ByVal Hwnd As Long) As Long
Public Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Public Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
Public Declare Function GetSystemMenu Lib "user32" (ByVal Hwnd As Long, ByVal bRevert As Long) As Long
Public Const MF_BYPOSITION = &H400
Public Const MF_REMOVE = &H1000
Public Function fctSupprimerFermerMenuSysteme(ByVal plngHwnd As Long) As Long
Dim lngHmenu As Long
Dim lngNombreElement As Long
lngHmenu = GetSystemMenu(plngHwnd, 0)
If lngHmenu Then
lngNombreElement = GetMenuItemCount(lngHmenu)
' Suppression de l'élément Fermer
Call RemoveMenu(lngHmenu, lngNombreElement - 1, MF_REMOVE Or MF_BYPOSITION)
' Suppression du séparateur
Call RemoveMenu(lngHmenu, lngNombreElement - 2, MF_REMOVE Or MF_BYPOSITION)
' On redessine le menu
Call DrawMenuBar(plngHwnd)
End If
End Function