Valeur label1.width différente sur une autre form [Résolu]

Signaler
Messages postés
550
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
6 juin 2015
-
Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
5 avril 2013
-
Coucou,

J'ai d'un coté une Form1 et de l'autre Form2.
Elles ont les mêmes propriétés (scalemode=pixel).

Sur Form1 j'ai mon label1.width = 110 (tout va bien)
Je copie le label et la colle sur Form2, label1.width = 1650 (???)

Pourquoi ?

2 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
36
Rien d'anormal je pense.
J'expliquerais cela par le fait que le label est copié avec comme largeur 110, pas 110 pixels mais 110 sans unité. L'unité étant définie par celle de l'écran.

Or leur du collage, la valeur de la largeur doit probablement être interprétée dans l'unité par défaut soit 110 twips. Comme l'unité de l'écran est en pixel, cette largeur est donc convertie en pixel soit 1650 pixels, 1 twips étant généralement égal à 15 pixels.

Ca ressemble effectivement à un bug de VB6.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
5 avril 2013
5
Bonsoir,

1) si ta form1 est en échelle de pixels, la largeur 110 de ton label est également en pixels.
2) chez moi, le copier-coller d'un tel label sur une Form2 également en échelle de pixels aboutit exactement à la même largeur (110 pixels), ce qui me parait logique et normal.

3) il est maintenant clair que si ton copier-coller se fait d'une Form1 en échelle de Pixels vers une PictureBox en échelle de Twips (bien qu'insérée sur une Form2 en échelle de pixels (comme Form1), la largeur du label ainsi inséré sera exprimée en unités (twips) du container final (la PictureBox) et non en unités de la Foirm2 (c'est même là le propre d'une pictureBox !...et heureusement !)

Et (bien entendu) pour un écran dont le nombre de twips par pixel horizontalement est de 15 (cas, aujourd'hui, de la quasi totalité des écrans) ===>>> 110 x 15 = 1650.