Enlever le X en haut à gauche

Lethal - 31 mai 2000 à 17:13
 Mariner - 31 mai 2000 à 20:11
quel est le code qui permet d'enlever la croix (X : qui se trouve en haut à droite de tous les logiciels) qui sert à fermer le programme ?

1 réponse

En VB, je crois que c'est impossible de l'enlever, mais tu peux le désactiver en mettant ceci dans un module:

'windows constants for CloseMenu
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long

Private Const MF_BYPOSITION = &H400&
Private Const MF_REMOVE = &H1000&
'/windows constants for CloseMenu

Public Sub DesactiveX(frm As Form)
Dim hMenu As Long
Dim nCount As Long

hMenu = GetSystemMenu(frm.hwnd, 0)
nCount = GetMenuItemCount(hMenu)

Call RemoveMenu(hMenu, nCount - 1, MF_REMOVE Or MF_BYPOSITION)
Call RemoveMenu(hMenu, nCount - 2, MF_REMOVE Or MF_BYPOSITION)

DrawMenuBar frm.hwnd
End Sub

PS: c'est pas moi qui l'ai écrit.
0
Rejoignez-nous