GDI : Couper un texte trop long [Résolu]

Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Dernière intervention
7 septembre 2009
- - Dernière réponse : cs_Bidou
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
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
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
36
3
Merci
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 );

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 90 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Lutinore
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Dernière intervention
20 juin 2013
58
0
Merci
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-
Commenter la réponse de cs_Bidou
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Dernière intervention
7 septembre 2009
0
Merci
En fesant une boucle qui retire un caractère jusqu'à ce que ca loge ?

<hr />I love .net
Commenter la réponse de cs_Yxion
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Dernière intervention
20 juin 2013
58
0
Merci
Euh je me rappelle plus par coeur, mais directement comme ça à froid je ne vois pas d'autres solutions...

<hr />
-My Blog-
Commenter la réponse de cs_Bidou
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Dernière intervention
7 septembre 2009
0
Merci
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
Commenter la réponse de cs_Yxion
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Dernière intervention
20 juin 2013
58
0
Merci
Ha tiens oui, je n'y avais même pensé.
Merci aussi  

<hr />
-My Blog-
Commenter la réponse de cs_Bidou

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.