Code pour redimensionner tous vos controles proportionnellement au redimensionnement de la fenetre

Description

En incluant ce code dans votre projet, ceci garantie qu'à chaque fois que l'utilisateur va redimensionner la fenêtre, tous vos contrôles seront toujours placé à la même place proportionnellement à celle où ils étaient auparavant !
Plein écran, fenêtré etc... votre form sera toujours la-même chez tous !

Ceci enlève aussi les problèmes de résolution d'écran : inutile de vous casser la tête à programmer dans la résolution à laquelle tournera l'appli !
TRANKIL en somme...

Source / Exemple :


'ya un zip aussi pour illustrer !
'------------------------------------
'code à placer dans une feuille nommer form1
'2 procédures en tout (form_load et form_resize)

'ATTENTION CECI FAIT DU TAG DES OBJETS UNE VALEUR OCCUPEE :
'en utilisant cette technique,
'le tag de chaque objet devient
'une valeur nécessaire'à son foncionnement,
'donc inutilisable pour toute autre chose de votre crue...

Private Sub Form_Load()
On Error Resume Next
  Me.Tag = CStr(Me.Width) & ":" & CStr(Me.Height)
  For Each object In Me
    object.Tag = CStr(object.X1) & ":" & CStr(object.Y1) & ";" & CStr(object.X2) & "!" & CStr(object.Y2)
    object.Tag = CStr(object.Width) & ":" & CStr(object.Height) & ";" & CStr(object.Left) & "!" & CStr(object.Top)
  Next object
End Sub

Private Sub Form_Resize()
On Error Resume Next
  For Each object In Me
    'pour les graphiques
    object.X1 = Val(Mid(object.Tag, 1, InStr(object.Tag, ":") - 1)) * Me.Width / Val(Mid(Me.Tag, 1, InStr(Me.Tag, ":") - 1))
    object.Y1 = Val(Mid(object.Tag, InStr(object.Tag, ":") + 1, Len(object.Tag) - InStr(object.Tag, ":") + 1)) * Me.Height / Val(Mid(Me.Tag, InStr(Me.Tag, ":") + 1, Len(Me.Tag) - InStr(Me.Tag, ":") + 1))
    object.X2 = Val(Mid(object.Tag, InStr(object.Tag, ";") + 1, Len(object.Tag) - InStr(object.Tag, ";") + 1)) * Me.Width / Val(Mid(Me.Tag, 1, InStr(Me.Tag, ":") - 1))
    object.Y2 = Val(Mid(object.Tag, InStr(object.Tag, "!") + 1, Len(object.Tag) - InStr(object.Tag, "!") + 1)) * Me.Height / Val(Mid(Me.Tag, InStr(Me.Tag, ":") + 1, Len(Me.Tag) - InStr(Me.Tag, ":") + 1))
    'pour le reste
    object.Width = Val(Mid(object.Tag, 1, InStr(object.Tag, ":") - 1)) * Me.Width / Val(Mid(Me.Tag, 1, InStr(Me.Tag, ":") - 1))
    object.Height = Val(Mid(object.Tag, InStr(object.Tag, ":") + 1, Len(object.Tag) - InStr(object.Tag, ":") + 1)) * Me.Height / Val(Mid(Me.Tag, InStr(Me.Tag, ":") + 1, Len(Me.Tag) - InStr(Me.Tag, ":") + 1))
    object.Left = Val(Mid(object.Tag, InStr(object.Tag, ";") + 1, Len(object.Tag) - InStr(object.Tag, ";") + 1)) * Me.Width / Val(Mid(Me.Tag, 1, InStr(Me.Tag, ":") - 1))
    object.Top = Val(Mid(object.Tag, InStr(object.Tag, "!") + 1, Len(object.Tag) - InStr(object.Tag, "!") + 1)) * Me.Height / Val(Mid(Me.Tag, InStr(Me.Tag, ":") + 1, Len(Me.Tag) - InStr(Me.Tag, ":") + 1))
  Next object
End Sub

Conclusion :


Merci de me laisser VOS COMMENTAIRES !
@+ les programmeurs et programmeuses (ça fait bizare comme mot... ya bien un féminin à ce mot ?)

Codes Sources

A voir également

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.