Redimensionner un composant suivant la taille de la fenêtre ? [Résolu]

Messages postés
14
Date d'inscription
jeudi 20 février 2003
Dernière intervention
25 mai 2010
- - Dernière réponse : cs_benland
Messages postés
14
Date d'inscription
jeudi 20 février 2003
Dernière intervention
25 mai 2010
- 17 août 2005 à 22:46
Bonjour,
je suis sous VB6, et je me suis rendu compte que cette version ne gère pas la proprité dock que l'on a sur VB.Net.
Cette propriété dock est bien sympa car elle permet d'agrandir les composants aux mêmes proportions que le Form.

Est ce qu'il est possible de retrouver cette fonctionnalité avec VB6, SVP ?

benland
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Dernière intervention
4 mars 2013
3
Merci
Si tu avais fait une recherche dans les sources du site, tu aurais déjà trouvé ton bonheur :

http://www.vbfrance.com/code.aspx?id=28747

http://www.vbfrance.com/code.aspx?id=408

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Messages postés
14
Date d'inscription
jeudi 20 février 2003
Dernière intervention
25 mai 2010
0
Merci
Merci beaucoup Darksidious , c'est exactement ce qu'il me fallait!
Et puis je n'avais pas besoin de cherchais puiske tu étais là

benland
Messages postés
14
Date d'inscription
jeudi 20 février 2003
Dernière intervention
25 mai 2010
0
Merci
Puis pour ce qui aurait le même problème que moi , je vous donne la source magique qui redimensionne tout proportionnellement à la taille de votre Form:

Public Sub RedimForm()
Dim Feuille As Form
Set Feuille = Screen.ActiveForm
If (Feuille.WindowState = vbMinimized) Then
Exit Sub
End If
Static Longueur As Long
Static Hauteur As Long
Dim PropLongueur As Single
Dim PropHauteur As Single
If ((Longueur > 0) And (Hauteur > 0)) Then
PropLongueur = Feuille.Width / Longueur
PropHauteur = Feuille.Height / Hauteur
Dim Ctrl As Control
On Error Resume Next
For Each Ctrl In Feuille.Controls
Ctrl.Left = CInt(Ctrl.Left * PropLongueur)
Ctrl.Top = CInt(Ctrl.Top * PropHauteur)
Ctrl.Width = CInt(Ctrl.Width * PropLongueur)
Ctrl.Height = CInt(Ctrl.Height * PropHauteur)
Next
On Error GoTo 0
End If
Longueur = Feuille.Width
Hauteur = Feuille.Height
End Sub

Bien entendue cette procédure doit être appelé dans l'évènement: Private Sub Form_Resize()

benland

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.