Je voudrais que mon userform ...
1) s'affiche dans la totalité de l'écran à l'ouverture.
2) que les objets dans le userform (ex. :Textbox) se redimensionne en fonction
de la grandeur de l'écran vs le userform lors de la création.
3) que la croix de fermeture du userform soit désactivée.
4) que le bouton de réduction de la fenêtre soit disponible.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
anonymousA
Bonjour,
c'est tout ?
Bon plus sérieusement, tu peux trouver à peu près tout ce que tu veux en fouinant sur Excelabo et sur le site de Frédéric Sigonneau. Pour le redimensionnement , je ne suis pas sur que tu le trouves là. Mais si c'est nécéssaire , tu peux revenir sur le forum.Les procédures de redimensionnement comme d'ailleurs toutes les autres utilisent les API et sont parfois un tout petit peu longues à poster.
A+
Bonjour,
Je voudrais que mon userform ... 1) s'affiche dans la totalité de l'écran à l'ouverture. 2) que les objets dans le userform (ex. :Textbox) se redimensionne en fonction de la grandeur de l'écran vs le userform lors de la création. 3) que la croix de fermeture du userform soit désactivée. 4) que le bouton de réduction de la fenêtre soit disponible.
Comment puis-je faire tout celà en même temps ?
Merci à l'avance !
Bonjour,
c'est tout ?
Bon plus sérieusement, tu peux trouver à peu près tout ce que tu veux en
fouinant sur Excelabo et sur le site de Frédéric Sigonneau.
Pour le redimensionnement , je ne suis pas sur que tu le trouves là.
Mais si c'est nécéssaire , tu peux revenir sur le forum.Les procédures
de redimensionnement comme d'ailleurs toutes les autres utilisent les
API et sont parfois un tout petit peu longues à poster.
A+
Bonjour,
Je voudrais que mon userform ...
1) s'affiche dans la totalité de l'écran à l'ouverture.
2) que les objets dans le userform (ex. :Textbox) se redimensionne en fonction
de la grandeur de l'écran vs le userform lors de la création.
3) que la croix de fermeture du userform soit désactivée.
4) que le bouton de réduction de la fenêtre soit disponible.
Bon plus sérieusement, tu peux trouver à peu près tout ce que tu veux en fouinant sur Excelabo et sur le site de Frédéric Sigonneau. Pour le redimensionnement , je ne suis pas sur que tu le trouves là. Mais si c'est nécéssaire , tu peux revenir sur le forum.Les procédures de redimensionnement comme d'ailleurs toutes les autres utilisent les API et sont parfois un tout petit peu longues à poster.
A+
Bonjour,
Je voudrais que mon userform ... 1) s'affiche dans la totalité de l'écran à l'ouverture. 2) que les objets dans le userform (ex. :Textbox) se redimensionne en fonction de la grandeur de l'écran vs le userform lors de la création. 3) que la croix de fermeture du userform soit désactivée. 4) que le bouton de réduction de la fenêtre soit disponible.
Comment puis-je faire tout celà en même temps ?
Merci à l'avance !
Hervé
Bonsoie EG, Regarde si cela convient. Pour juger de l'effet, crée une proc de lancement de la form, installe un bouton sur une feuille de calcul et ferme le VBE afin de voir le formulaire en position réduite. A mettre dans le module de la Form :
Private Declare Function GetSystemMenu _ Lib "user32" ( _ ByVal hwnd As Long, _ ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu _ Lib "user32" ( _ ByVal hMenu As Long, _ ByVal nPosition As Long, _ ByVal wFlags As Long) As Long
Private Declare Function FindWindow _ Lib "user32" Alias "FindWindowA" ( _ ByVal lpClassName As String, _ ByVal lpWindowName As String) As Long
Private Declare Function EnableWindow _ Lib "user32" ( _ ByVal hwnd As Long, _ ByVal bEnable As Long) As Long
Private Declare Function GetWindowLong _ Lib "user32" _ Alias "GetWindowLongA" ( _ ByVal hwnd As Long, _ ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong _ Lib "user32" _ Alias "SetWindowLongA" ( _ ByVal hwnd As Long, _ ByVal nIndex As Long, _ ByVal dwNewLong As Long) As Long
Private Sub UserForm_Click() Unload Me End Sub
Private Sub UserForm_Initialize() Dim hwnd As Long Dim Menu As Long Dim Result As Long Dim R As Single Dim Largeur As Single
'récupère la largeur de création Largeur = Me.Width Me.Caption = "Titre de la Form"
'défini la boite hwnd = FindWindow(vbNullString, _ Me.Caption) Menu = GetSystemMenu(hwnd, _ False) Result = DeleteMenu(Menu, _ 61536, _ 0) SetWindowLong hwnd, _ -16, _ GetWindowLong(hwnd, -16) Or 131072
'maximise la form Me.Width = Application.Width Me.Height = Application.Height
'défini le rapport R = Me.Width / Largeur
'redimensionne le textbox TextBox1.Width = TextBox1.Width * R TextBox1.Height = TextBox1.Height * R
'hé oui, ne pas oublier 'un système de fermeture ;o) TextBox1.Text = "Cliquer sur la Form pour fermer !"
End Sub
Hervé.
"EG" a écrit dans le message de news:
Bonjour,
Je voudrais que mon userform ... 1) s'affiche dans la totalité de l'écran à l'ouverture. 2) que les objets dans le userform (ex. :Textbox) se redimensionne en fonction de la grandeur de l'écran vs le userform lors de la création. 3) que la croix de fermeture du userform soit désactivée. 4) que le bouton de réduction de la fenêtre soit disponible.
Comment puis-je faire tout celà en même temps ?
Merci à l'avance !
Bonsoie EG,
Regarde si cela convient. Pour juger de l'effet, crée une proc de lancement
de la form, installe un bouton sur une feuille de calcul et ferme le VBE
afin de voir le formulaire en position réduite. A mettre dans le module de
la Form :
Private Declare Function GetSystemMenu _
Lib "user32" ( _
ByVal hwnd As Long, _
ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu _
Lib "user32" ( _
ByVal hMenu As Long, _
ByVal nPosition As Long, _
ByVal wFlags As Long) As Long
Private Declare Function FindWindow _
Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function EnableWindow _
Lib "user32" ( _
ByVal hwnd As Long, _
ByVal bEnable As Long) As Long
Private Declare Function GetWindowLong _
Lib "user32" _
Alias "GetWindowLongA" ( _
ByVal hwnd As Long, _
ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong _
Lib "user32" _
Alias "SetWindowLongA" ( _
ByVal hwnd As Long, _
ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long
Private Sub UserForm_Click()
Unload Me
End Sub
Private Sub UserForm_Initialize()
Dim hwnd As Long
Dim Menu As Long
Dim Result As Long
Dim R As Single
Dim Largeur As Single
'récupère la largeur de création
Largeur = Me.Width
Me.Caption = "Titre de la Form"
'défini la boite
hwnd = FindWindow(vbNullString, _
Me.Caption)
Menu = GetSystemMenu(hwnd, _
False)
Result = DeleteMenu(Menu, _
61536, _
0)
SetWindowLong hwnd, _
-16, _
GetWindowLong(hwnd, -16) Or 131072
'maximise la form
Me.Width = Application.Width
Me.Height = Application.Height
'défini le rapport
R = Me.Width / Largeur
'redimensionne le textbox
TextBox1.Width = TextBox1.Width * R
TextBox1.Height = TextBox1.Height * R
'hé oui, ne pas oublier
'un système de fermeture ;o)
TextBox1.Text = "Cliquer sur la Form pour fermer !"
End Sub
Hervé.
"EG" <EG@discussions.microsoft.com> a écrit dans le message de news:
80C95449-9933-49E5-9E52-591989369A99@microsoft.com...
Bonjour,
Je voudrais que mon userform ...
1) s'affiche dans la totalité de l'écran à l'ouverture.
2) que les objets dans le userform (ex. :Textbox) se redimensionne en
fonction
de la grandeur de l'écran vs le userform lors de la création.
3) que la croix de fermeture du userform soit désactivée.
4) que le bouton de réduction de la fenêtre soit disponible.
Bonsoie EG, Regarde si cela convient. Pour juger de l'effet, crée une proc de lancement de la form, installe un bouton sur une feuille de calcul et ferme le VBE afin de voir le formulaire en position réduite. A mettre dans le module de la Form :
Private Declare Function GetSystemMenu _ Lib "user32" ( _ ByVal hwnd As Long, _ ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu _ Lib "user32" ( _ ByVal hMenu As Long, _ ByVal nPosition As Long, _ ByVal wFlags As Long) As Long
Private Declare Function FindWindow _ Lib "user32" Alias "FindWindowA" ( _ ByVal lpClassName As String, _ ByVal lpWindowName As String) As Long
Private Declare Function EnableWindow _ Lib "user32" ( _ ByVal hwnd As Long, _ ByVal bEnable As Long) As Long
Private Declare Function GetWindowLong _ Lib "user32" _ Alias "GetWindowLongA" ( _ ByVal hwnd As Long, _ ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong _ Lib "user32" _ Alias "SetWindowLongA" ( _ ByVal hwnd As Long, _ ByVal nIndex As Long, _ ByVal dwNewLong As Long) As Long
Private Sub UserForm_Click() Unload Me End Sub
Private Sub UserForm_Initialize() Dim hwnd As Long Dim Menu As Long Dim Result As Long Dim R As Single Dim Largeur As Single
'récupère la largeur de création Largeur = Me.Width Me.Caption = "Titre de la Form"
'défini la boite hwnd = FindWindow(vbNullString, _ Me.Caption) Menu = GetSystemMenu(hwnd, _ False) Result = DeleteMenu(Menu, _ 61536, _ 0) SetWindowLong hwnd, _ -16, _ GetWindowLong(hwnd, -16) Or 131072
'maximise la form Me.Width = Application.Width Me.Height = Application.Height
'défini le rapport R = Me.Width / Largeur
'redimensionne le textbox TextBox1.Width = TextBox1.Width * R TextBox1.Height = TextBox1.Height * R
'hé oui, ne pas oublier 'un système de fermeture ;o) TextBox1.Text = "Cliquer sur la Form pour fermer !"
End Sub
Hervé.
"EG" a écrit dans le message de news:
Bonjour,
Je voudrais que mon userform ... 1) s'affiche dans la totalité de l'écran à l'ouverture. 2) que les objets dans le userform (ex. :Textbox) se redimensionne en fonction de la grandeur de l'écran vs le userform lors de la création. 3) que la croix de fermeture du userform soit désactivée. 4) que le bouton de réduction de la fenêtre soit disponible.