GDI : Couper un texte trop long

Résolu
cs_Yxion
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
7 septembre 2009
- 25 sept. 2007 à 13:42
cs_Bidou
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Membre
Dernière intervention
20 juin 2013
- 25 sept. 2007 à 19:37
Bonjour tous le monde,

J'aimerais savoir s'il existe une méthode dans GDI pour tronquer un texte trop long :
J'ai un texte à écrire dans un controle d'une certaine taille où j'y dessine du texte d'une longueur variable.

Je connais la méthode pour mesurer la longueur du texte (MesureString je crois) de l'objet de dessin Graphics, mais j'aimerais couper mon texte trop long pour y mettre trois petits points à la place.

Je pensais faire un truc un peu brut qui aurait été une boucle retirant un caractère jusqu'à ce que la chaine loge... mais ca ne me plait pas.

Si c'est la seule manière de procéder, je procèderais, mais ça m'étonne un peu de rien trouver pour faire ca...

Merci de votre aide

NB : Très joli cette nouvelle interface, j'adore le changement... sauf que C# est mis à la fin , il aurait du être mis juste à coté de CS

<hr />I love .net

6 réponses

Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
25 sept. 2007 à 16:41
Salut,

StringFormat sf = new StringFormat( );
sf.FormatFlags = StringFormatFlags.NoWrap;
sf.Trimming = StringTrimming.EllipsisWord;


g.DrawString( s, this.Font, Brushes.Black,
    new RectangleF( 10.0f, 10.0f, 100.0f, 100.0f ), sf );
3
cs_Bidou
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Membre
Dernière intervention
20 juin 2013
59
25 sept. 2007 à 14:55
Salut,
Je ne crois pas que cette fonction existe, perso je l'ai toujours codée moi-même...
C'est juste quelques lignes hein :)

<hr />
-My Blog-
0
cs_Yxion
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
7 septembre 2009

25 sept. 2007 à 15:01
En fesant une boucle qui retire un caractère jusqu'à ce que ca loge ?

<hr />I love .net
0
cs_Bidou
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Membre
Dernière intervention
20 juin 2013
59
25 sept. 2007 à 15:09
Euh je me rappelle plus par coeur, mais directement comme ça à froid je ne vois pas d'autres solutions...

<hr />
-My Blog-
0

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

Posez votre question
cs_Yxion
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
7 septembre 2009

25 sept. 2007 à 16:51
Merci... j'avais bien regardé la dedans, mais pas assez, en plus le EllipsisWord est vraiment mieux que ce que je voulais faire.

Une grand merci
<hr />I love .net
0
cs_Bidou
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Membre
Dernière intervention
20 juin 2013
59
25 sept. 2007 à 19:37
Ha tiens oui, je n'y avais même pensé.
Merci aussi  

<hr />
-My Blog-
0