1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
'Dans une :
Class DisableCroix
Public Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Integer
Public Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Integer, ByVal nPosition As Integer, ByVal wFlags As Integer) As Integer
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Integer, ByVal bRevert As Boolean) As Integer
Public Const MF_BYPOSITION = &H400&
Public Const MF_REMOVE = &H1000&
Public Sub New(ByVal hwnd As Integer, ByVal sText As String, ByVal IDMenu As Short)
Dim hSysMenu As Integer
Dim nCount As Integer
'*/ Pour désactiver la croix system-----------
hSysMenu = GetSystemMenu(hwnd, False)
nCount = GetMenuItemCount(hSysMenu)
RemoveMenu(hSysMenu, nCount - 1, MF_REMOVE Or MF_BYPOSITION)
RemoveMenu(hSysMenu, nCount - 2, MF_REMOVE Or MF_BYPOSITION)
End Sub
end Class
'----------------------------------------
Dans la form
Private DisCroix As DisableCroix
Protected Overrides Sub DefWndProc(ByRef m As System.Windows.Forms.Message)
MyBase.DefWndProc(m)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
DisCroix = New DisableCroix(Me.Handle.ToInt32, "", 0)
End Sub |
Partager