harddisk
Messages postés54Date d'inscriptionvendredi 28 décembre 2001StatutMembreDernière intervention13 mai 2007
-
20 août 2004 à 11:15
harddisk
Messages postés54Date d'inscriptionvendredi 28 décembre 2001StatutMembreDernière intervention13 mai 2007
-
20 août 2004 à 17:17
Hello,
J'ai un problème super bête et très courant et je me souviens plus de la solution(trop longtemps que j'ai pas touché à VB).
J'ai une form et une picture et je souhaiterai que la form aie la taille de la picture box(original)
je fais donc
picture1.move 0,0
form1.width=picture1.width
form1.height=picture1.height
et, ca marche pas: ma forme est la plus petite possible
Je vérifie donc, tous les scalmode sont à 3(pixel) et quand je regare la width par exemple de ma forme, elle fait 13256!!!! Ca peut pas etre des pixels vu que mon écran fait pas 13256 pixels et que ma form tient dedans. Ca ressemble plus à des twips. Mais pourtant je suis en pixel.
D'ou celà viens??
merci
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 20 août 2004 à 13:56
en calculant la différence entre Form1.Width et Form1.ScaleWidth
pour la lageur et entre Form1.Height et Form1.ScaleHeight pour la hauteur.
Si ta forme est en pixels on aura:
dw = Form1.Witdh - Form1.ScaleWidth * Screen.TwipsPerPixelX
dh = Form1.Height - Form1.ScaleHeight * Screen.TwipsPerPixelY
donc ton cacul devient:
Form1.Width = Picture1.Width * Screen.TwipsPerPixelX + dw
Form1.Height = Picture1.Height * Screen.TwipsPerPixelY + dh
Note: ne pas modifier Form1.ScaleWidth et Form1.ScaleHeight directement sinon tu ne serais plus en pixels mais en user et de plus la forme aurait toujours la meme taille.
MoiOlivier
Messages postés172Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention 4 août 2005 20 août 2004 à 11:25
Salut,
C'est l'intérieur de ta form qui est en pixel, donc les coordonnées des objets qu'elle contient. Les dimensions de ta feuille elles, sont exprimée en twips puisque ce qui contient ta feuille c'est l'écran.
Donc, pour redimensionner ta feuille, il faut faire :
form1.width=picture1.width * screen.twipsperpixelx
form1.height=picture1.height*screen.twipsperpixely
harddisk
Messages postés54Date d'inscriptionvendredi 28 décembre 2001StatutMembreDernière intervention13 mai 2007 20 août 2004 à 13:03
Merci, c'est ca que j'avais oublié. Par contre il y a encore un pb. On ne voit pas l'image en entier dans la hauteur, c'est sans doute a cause de la barre de titre. Comment récupère t-on sa taille?