FEuille MDI et ControlBOx

akhiro Messages postés 15 Date d'inscription lundi 11 février 2002 Statut Membre Dernière intervention 22 juin 2002 - 18 avril 2002 à 20:25
cs_mds Messages postés 21 Date d'inscription mardi 17 juillet 2001 Statut Membre Dernière intervention 19 août 2007 - 28 oct. 2002 à 20:35
J'utilise une feuille MDI avec des dimensions bien précise.
Je souhaiterais pouvoir bloquer le redimensionnement de cette feuille MDI ainsi que laisser la possibilité d'utiliser le MinButton et le bouton de fermeture mais ne pas laisser apparaitre le MaxButton.
Quelqu'un sait'il comment faire cela ?
Merci d'avance...

3 réponses

cs_mds Messages postés 21 Date d'inscription mardi 17 juillet 2001 Statut Membre Dernière intervention 19 août 2007
28 oct. 2002 à 20:34
Essayez ceci. Je pense que la reponse à votre PB est comprise dans ce bout de code !

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&
Private Sub DesactiveX()
Dim hMenu As Long
Dim nCount As Long
hMenu = GetSystemMenu(Me.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 Me.hwnd
End Sub
Private Sub MDIForm_Load()
DesactiveX
End Sub
Private Sub MDIForm_Click()
Unload Me
End Sub

@+
0
cs_mds Messages postés 21 Date d'inscription mardi 17 juillet 2001 Statut Membre Dernière intervention 19 août 2007
28 oct. 2002 à 20:35
Essayez ceci. Je pense que la reponse à votre PB est comprise dans ce bout de code !

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&
Private Sub DesactiveX()
Dim hMenu As Long
Dim nCount As Long
hMenu = GetSystemMenu(Me.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 Me.hwnd
End Sub
Private Sub MDIForm_Load()
DesactiveX
End Sub
Private Sub MDIForm_Click()
Unload Me
End Sub

@+
0
cs_mds Messages postés 21 Date d'inscription mardi 17 juillet 2001 Statut Membre Dernière intervention 19 août 2007
28 oct. 2002 à 20:35
Essayez ceci. Je pense que la reponse à votre PB est comprise dans ce bout de code !

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&
Private Sub DesactiveX()
Dim hMenu As Long
Dim nCount As Long
hMenu = GetSystemMenu(Me.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 Me.hwnd
End Sub
Private Sub MDIForm_Load()
DesactiveX
End Sub
Private Sub MDIForm_Click()
Unload Me
End Sub

@+
0
Rejoignez-nous