Ecrire dans RichTextBox à deux positions différentes sur une même ligne
AlexBob789
Messages postés8Date d'inscriptionmardi 2 mars 2004StatutMembreDernière intervention14 septembre 2008
-
14 nov. 2005 à 22:10
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
18 nov. 2005 à 10:41
Je vous salut,
Je suis présentement en train d'essayer décrire des informations dans Richtexbox mais j'arrive pas a les présenter sous forme de colonne, je m'explique :
0 20
Nom: Marley
Prenom: Bob
Pays Jamaique
Quelqu'1 a une idée?
A voir également:
Ecrire dans RichTextBox à deux positions différentes sur une même ligne
AlexBob789
Messages postés8Date d'inscriptionmardi 2 mars 2004StatutMembreDernière intervention14 septembre 2008 15 nov. 2005 à 14:13
Merci Sébatien pour ton intervention,
j'ai essayé ton exemple mais quand les données sont affichées le chiffre 0 ou 20 le sont aussi
string
l1 = "Nom:";
string l2 = "Marley",l3;
l3 = "0\t\t20" + l1 + "\t\t" + l2;
rtb.AppendText(l3);
Resultat:
0 20Nom: Marley
qui est différent de
0 20
Nom: Marley
Mais j'ai pas envie que les chiffres soitr affichés. Je ne sais pas ce que je fais d'incorrect? As-tu une idée.
Par la même occasion j'explique mon problème: j'utilise le RichTextbox pour afficher des informations qui doivent être imprimer à partir d'un guichet électronique. Comme l'écra du guchet n'est pas si grand je dois vraiment jouer avec la position des caractères à l'écran et sur papier. Je ne sais pas s'il y a un autre control qui me permet de faire cela à part le RichTexbox.
Merci Bien.
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 15 nov. 2005 à 18:37
Il suffisait que tu ajoutes un retour à la ligne...
Sinon pour effectuer ton alignement tu as juste à te concocter une petite méthode utilaitaire pour toi ajouter autant d'espaces qu'il le faut à la fin de ta chaine :
Exemple : private static string AppendSpaces(string src, int newStrLength)
{
StringBuilder sb = new StringBuilder(newStrLength);
sb.Append(src);
for(int i=0; i<newStrLength-src.Length; i++)
{
sb.Append(' ');
}
return sb.ToString();
}
AlexBob789
Messages postés8Date d'inscriptionmardi 2 mars 2004StatutMembreDernière intervention14 septembre 2008 18 nov. 2005 à 00:57
Merci pour ton intervention Coq,
Mais je l'avais déjà utilisé la methode String.PadRight bien avant ta methode, mais ça ne donne pas de résultats satisfaisants, prenons l'exemple suivant:
WWWWWWWWWW *
IIIIIII *
Alors tu as la chaine de 10 W et 10 espace et * se situe à la 21 positions, il en est de même pour la chaine2 de 10 I et 10 espace. Mais quand tu regardes tu vois très bien que les deux * ne sont pas allignés verticalement, ils sont tous à la POSITION 21, mais ils ne sont pas à la COLONNE 21 (si je peux m'exprimer de cette manière).
En faite je ne suis pas encore sortis de l'auberge.
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 18 nov. 2005 à 10:41
Wow, je me fais vieux j'avais complètement oublier PadRight
Sinon oui je n'avais pas penser à ce problème là
Il faudrais que tu utilises une police "Raster" (bitmap) mais je ne sais pas si c'est possible dans un RTB.