agauthiers
Messages postés33Date d'inscriptionmardi 28 décembre 2004StatutMembreDernière intervention15 février 2005
-
28 déc. 2004 à 20:02
agauthiers
Messages postés33Date d'inscriptionmardi 28 décembre 2004StatutMembreDernière intervention15 février 2005
-
29 déc. 2004 à 18:00
Bonjour à tous,
Je débute en VB 6.0., j'en suis à ma seconde question.
(Un grand merci à Bultez pour la première)
Comment connaître les dimensions d'une RichTextBox de 8O colonnes par 24 lignes
avec une police MS sans Serif gras 12 avec un écran en 1024X768 ?
Quelle mesure utiliser le twips, le pixel ?
Un grand merci pour vos réponses.
Bonnes fêtes de fin d'année.
agauthiers@ifrance.com
A voir également:
Comment connaître les dimensions d'une RichTextBox de 8O colonnes par 24 lignes
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 29 déc. 2004 à 11:57
Salut agauthiers
Comme tu peux le constater, la police 'MS Sans Serif' n'est pas une police à champ fixe, c'est à dire que la lettre 'i' prend moins de place qu'un 'm'.
Tu ne peux donc pas calculer de largeur standard pour 80 colonnes puisque 80 lettres 'i' prendront beaucoup moins de place que 80 lettres 'm'.
Sinon, pour les mesures : Le Twip est l'unité utilisée par défaut dans ta feuille, donc raisonne en Twip, ça sera plus facile pour imposer des positions (.Top, .Left) ou des tailles (.Length, .Width) à tes objets.
Pour calculer la taille en Twips d'un texte, c'est assez simple :
Il faut pour cela que tout ton texte utilise la même police (sachant qu'on peut mélanger plusieurs polices dans un même RichTextBox) : Il suffit d'utiliser la propriété TextLength (ou TextWidth) de ta forme :
On peut écrire sur une forme. C'est peu utilisé, mais c'est possible. Donc une forme a une propriété Font.
Il suffit de donner à cette propriété Font les mêmes caractéristiques que la fonte de ton RichTextBox :
MaForme.Font = RichTextBox1.Font
A partir de là, pour connaitre une largeur de texte, tu n'as plus qu'à faire :
LargeurTwip = MaForme.TextLength("Mon texte")
Ca, c'est la largeur du texte. Pour connaitre la largeur du RichTextBox, il te suffit d'ajouter quelques Twips pour les bordures et les barres de scrolling (environ 150 twips)
Vala
Jack
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)