Ligne dans Frame

Résolu
cs_machto Messages postés 179 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 18 février 2009 - 21 juil. 2006 à 18:10
cs_machto Messages postés 179 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 18 février 2009 - 22 juil. 2006 à 11:06
Bonsoir,
j'ai une Frame et je souhaite créer une ligne qui fasse la hauteur de ma Frame. En mettant la même valeur dans Y2 que ma Frame.Heigh (et 0 dans Y1), ma ligne verticale est plus courte. Comment fait-on la correspondance entre toutes ces Heigh, entre les form, frame et autres, il semble que les chiffres n'aient pas la même valeur.
Merci

M@chto

5 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
22 juil. 2006 à 02:21
Bah désolé, chez moi ça marche très bien ..., quelque soit la taille de la Frame.
Non, les composants on tous l'échelle de Twips ou Pixels choisie dans Form.ScaleMode et les autres Scale?
Et en utilisant BorderStyle = 0 (None), pas la peine de jouer avec la hauteur du texte.
Par contre, sais-tu que, si un composant (comme ta Line) est dessinée à l'intérieur (appartient à) d'une Frame, les coordonnées deviennent relatives à la Frame, pas à la Form, donc X = 0 est le bord haut de la Frame.

Si vraiment ça marche pas, colle le code que tu as utilisé pour positionner ta Line

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
3
cs_machto Messages postés 179 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 18 février 2009 1
22 juil. 2006 à 11:06
Bon, je vais revoir ça. Je te remercie encore.
A+
M@chto
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
21 juil. 2006 à 20:10
Salut
Parce qu'une partie de la Frame (en haut) est une zône texte.
Le dessin de la 1ère ligne horizontale est à la moitié de la hauteur du texte du nom de la Frame.
La hauteur d'un texte peut être connu en utilisant une PictureBox ou une Form avec TextHeight
HauteurTexte = Me.TextHeight("le texte à tester")
Le Y1 de ta Line devra donc commencer à HauteurTexte / 2
Et le Y2 = Frame.Height - HauteurTexte / 2

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
21 juil. 2006 à 20:14
TextHeight : à condition que la Police de la Form soit la même que celle de la Frame
Pour les Form, il vaut mieux utiliser ScaleHeight que Height : ScaleHeight renvoie la hauteur intérieure de la forme
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_machto Messages postés 179 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 18 février 2009 1
21 juil. 2006 à 20:26
Merci de ta réponse.
Si je ne comprends pas bien. Je parle d'une ligne verticale qui par du haut de la frame et qui va jusqu'en bas. J'ai mis ma Frame en BorderStyle = none pour ne pas avoir le texte. Mais, en fait, mon problème n'est pas en haut.
Pour des raisons des scroll dans ma frame (j'ai trouvé ça sur le forum), j'ai créé une frame qui fait Heigh = 16600
Si je mets à ma Line y2 = 16600, elle ne va pas jusqu'en bas, loin de là (je le vois quand je scrolle). les échelles ne sont pas les mêmes?
Merci pour ton aide.
Si tu peux préciser....
M@chto
0
Rejoignez-nous