Largeur en pixel d'une chaine en .net [Résolu]

Messages postés
138
Date d'inscription
mardi 7 septembre 2004
Dernière intervention
10 mai 2012
- - Dernière réponse : blq
Messages postés
98
Date d'inscription
vendredi 22 octobre 1999
Dernière intervention
13 juin 2016
- 8 déc. 2010 à 16:31
Bonjour,

je l'aivais et l'ai plus comment connaitre en pixel la largeur d'une chaine en fonction de sa police. en .net 2005

merci

reno
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
3
Merci
tu as la méthode MeasureString de la classe Graphics de GDI+ ...

Renfield
Admin CodeS-SourceS- MVP Visual Basic

Merci Renfield 3

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

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de Renfield
Messages postés
138
Date d'inscription
mardi 7 septembre 2004
Dernière intervention
10 mai 2012
0
Merci
oui mais obliger de créer un graphics pas d'autre solution ?

reno
Commenter la réponse de renocmoa
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
0
Merci
tu doit pouvoir jouer avec un controle qui s'autosize selon le contenu, et lui demander sa largeur...

au pire, utiliser la Class graphics n'est pas très complexe, tu sais ^^

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Commenter la réponse de Renfield
Messages postés
98
Date d'inscription
vendredi 22 octobre 1999
Dernière intervention
13 juin 2016
0
Merci
J'ai posté cet exemple dans http://www.vbfrance.com/codes/LONGUEUR-PIXEL-CHAINE-CARACTERE_33625.aspx avec l'objet ListView en affichage "Details", pour redimensionner la largeur d'une colonne. Cela ne répond peut-être pas à la question, mais à priori, l'objectif est un affichage, il faut a priori un objet graphique, même en déclaration sans Form.

' Déclarations
Dim leGraphic As Graphics = laListView.CreateGraphics
Dim unItem as ListViewItem = Nothing
Dim tailleChaine As Integer = 0


' Ajout d'un nouveau texte dans la liste
unItem = laListView.Items.Add("une chaine de longueur variable...")
' Récupération de la taille
tailleChaine = CInt(leGraphic.MeasureString(unItem.Text, unItem.Font).Width)

' Si la largueur de la colonne est inférieur au texte ajouté, alors
' on met à jour la taille de la colonne pour tout afficher
If tailleChaine > laListView.Columns.Item(0).Width Then laListView.Columns.Item(0).Width = tailleChaine
Commenter la réponse de blq

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.