Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Taille de chaine de caractere

4 réponses
Avatar
A.ALAIN
Bonjour ,

Je voudrais savoir s'il ya une fonction VB6 qui permet de caculer le WIDTH
d'une chaine de caractère dans un LABEL , je dis bien le width et pas le
nombre de caracteres .

je debute en VB6 , et desolais pour une question aussi facile .

Merci pour votre aide

4 réponses

Avatar
Pascal B.
Salut Alain,

Si tu mets la propriété AutoSize de ton controle Label à True, sa propriété Width retourne la largeur du texte qu'il contient.

Exemple:

Label1.AutoSize = True
Label1.Caption = "Ceci est un test"
MsgBox "La largeur du texte est de " & Label1.Width & " twips"

(Voir aussi la fonction TextWidth)

Cordialement
Pascal B.

"A.ALAIN" wrote in message news:
| Bonjour ,
|
| Je voudrais savoir s'il ya une fonction VB6 qui permet de caculer le WIDTH
| d'une chaine de caractère dans un LABEL , je dis bien le width et pas le
| nombre de caracteres .
|
| je debute en VB6 , et desolais pour une question aussi facile .
|
| Merci pour votre aide
|
|
Avatar
Guy DETIENNE
Salut ;O)

Comme le dit Pascal, si la propriété Autosize du Label est à True, les
propriétés Height et Width te donneront la hauteur ainsi que la largeur du
texte.

Par contre la propriété TextWidth n'existe pas pour un label.

Pour éviter de devoir mettre la propriété AutoSize des labels à True, tu
peux jouer avec les propriétés TextWidth et TextHeight de ton formulaire (ou
n'importe quel objet Picture) en ayant préalablement initialisé la propriété
Font à l'identique du label :

Me.Label1.Caption = "Ceci est mon texte"
Me.Font = Me.Label1.Font
MsgBox "Largeur : " & Me.TextWidth(Me.Label1.Caption)
MsgBox "Hauteur : " & Me.TextHeight(Me.Label1.Caption)

Le résultat retourné est en fonction de la propriété ScaleMode de ton
formulaire. Par défaut en Twips.

Guy

"A.ALAIN" a écrit dans le message de
news:
Bonjour ,

Je voudrais savoir s'il ya une fonction VB6 qui permet de caculer le WIDTH
d'une chaine de caractère dans un LABEL , je dis bien le width et pas le
nombre de caracteres .

je debute en VB6 , et desolais pour une question aussi facile .

Merci pour votre aide




Avatar
A.ALAIN
salut
j'ai essayé d'appliquer la solution que vous m'avez donner mais je crois que
ca ne convient pas , la raison et que je travail sur un Activex qui contient
des Frame qui elle ne contient pas de fonction TextWidth contrairement aux
forms , j'ai pas msdn , mais je me demandais s'il n'existe pas dans les
fonctions VB une fonction du genre qui prend un String et un Font et qui
renvoi le Width de la chaine .

Alain .

"Guy DETIENNE" a écrit dans le message de news:

Salut ;O)

Comme le dit Pascal, si la propriété Autosize du Label est à True, les
propriétés Height et Width te donneront la hauteur ainsi que la largeur du
texte.

Par contre la propriété TextWidth n'existe pas pour un label.

Pour éviter de devoir mettre la propriété AutoSize des labels à True, tu
peux jouer avec les propriétés TextWidth et TextHeight de ton formulaire


(ou
n'importe quel objet Picture) en ayant préalablement initialisé la


propriété
Font à l'identique du label :

Me.Label1.Caption = "Ceci est mon texte"
Me.Font = Me.Label1.Font
MsgBox "Largeur : " & Me.TextWidth(Me.Label1.Caption)
MsgBox "Hauteur : " & Me.TextHeight(Me.Label1.Caption)

Le résultat retourné est en fonction de la propriété ScaleMode de ton
formulaire. Par défaut en Twips.

Guy

"A.ALAIN" a écrit dans le message de
news:
> Bonjour ,
>
> Je voudrais savoir s'il ya une fonction VB6 qui permet de caculer le


WIDTH
> d'une chaine de caractère dans un LABEL , je dis bien le width et pas le
> nombre de caracteres .
>
> je debute en VB6 , et desolais pour une question aussi facile .
>
> Merci pour votre aide
>
>




Avatar
david
Salut,

en fait, les propriétés textWidth et textHeight existe pour pas mal
de contrôle.
Les "pictureBox" par exemple.
1° cas : utiliser des pictureBox plutôt que des Frames
L'avantage, c'est que les pictureBox peuvent aussi contenir des
contrôles (tout comme les frames).
2° cas : ajouter une pictureBox cachée
Tu peux créer une pictureBox avec l'attribut Visible à false. Et le
tour est joué...

Rq : fait attention aux propriétés de police pour ta picture box et
tes labels, elle doivent être identiques. De plus, la largeur des
labels est plus grande que celle de la largeur du texte inclus (besoin
de place pour la petite marge et la bordure, même s'il n'y en a pas de
dessinnée).

A+, david
A.ALAIN a écrit :

salut
j'ai essayé d'appliquer la solution que vous m'avez donner mais je croi s que
ca ne convient pas , la raison et que je travail sur un Activex qui conti ent
des Frame qui elle ne contient pas de fonction TextWidth contrairement aux
forms , j'ai pas msdn , mais je me demandais s'il n'existe pas dans les
fonctions VB une fonction du genre qui prend un String et un Font et qui
renvoi le Width de la chaine .

Alain .

"Guy DETIENNE" a écrit dans le message de news:

> Salut ;O)
>
> Comme le dit Pascal, si la propriété Autosize du Label est à True , les
> propriétés Height et Width te donneront la hauteur ainsi que la lar geur du
> texte.
>
> Par contre la propriété TextWidth n'existe pas pour un label.
>
> Pour éviter de devoir mettre la propriété AutoSize des labels à True, tu
> peux jouer avec les propriétés TextWidth et TextHeight de ton formu laire
(ou
> n'importe quel objet Picture) en ayant préalablement initialisé la
propriété
> Font à l'identique du label :
>
> Me.Label1.Caption = "Ceci est mon texte"
> Me.Font = Me.Label1.Font
> MsgBox "Largeur : " & Me.TextWidth(Me.Label1.Caption)
> MsgBox "Hauteur : " & Me.TextHeight(Me.Label1.Caption)
>
> Le résultat retourné est en fonction de la propriété ScaleMode de ton
> formulaire. Par défaut en Twips.
>
> Guy
>
> "A.ALAIN" a écrit dans le message de
> news:
> > Bonjour ,
> >
> > Je voudrais savoir s'il ya une fonction VB6 qui permet de caculer le
WIDTH
> > d'une chaine de caractère dans un LABEL , je dis bien le width et p as le
> > nombre de caracteres .
> >
> > je debute en VB6 , et desolais pour une question aussi facile .
> >
> > Merci pour votre aide
> >
> >
>
>