2009-10-20 8 views
0

Je fais une application dans laquelle l'étiquette continue à défiler. Le problème que j'ai est que je veux faire le bon alignement pour que je reçoive "." dans une séquence commeComment ajouter des points de fin?

Basket.............. 
Ball................ 
keyboard............ 

Quelqu'un peut-il m'aider s'il vous plaît?

J'ai essayé, mais il ne fonctionne pas pour moi,

for (int u = textBox1.Length; u = 40 ; u++) 
{ 
    strDotsBuilder.Append("."); 
} 
+0

J'ai étiqueté ceci comme C# puisque 'strDotsBuilder' ressemble à un' StringBuilder' - si je me trompe, corrigez-le. –

+0

Votre question n'est pas claire - je ne suis pas sûr de ce que vous essayez d'atteindre. Voulez-vous ajouter "." faire de la corde une longueur particulière? Ou voulez-vous écrire des indicateurs d'activité sur la console pour une application en ligne de commande? ou autre chose? – Bevan

Répondre

0

Essayez ceci:

for (int u = textBox1.Length; u < 40 ; u++) 
{ 
    strDotsBuilder.Append("."); 
} 

La deuxième déclaration dans une boucle for est la condition qui détermine si oui ou non pour continuer à boucler. Dans votre cas, vous avez assigné "40" à u plutôt que de le vérifier comme une limite supérieure pour la boucle.

+0

alors que dois-je faire maintenant? – Umair

+0

Avez-vous essayé mon exemple? –

8

Cela n'a pas vraiment besoin d'être dans une boucle for ...
Pourquoi n'utilisez-vous pas la fonction padLeft d'une chaîne?

"myString" .PadLeft (40, '');
Editer:
Vous avez besoin de "myString" .PadRight (40, '.');

+1

Devrait être PadRight() –

+0

Oh, oui: p (j'ai besoin de 15 caractères pour ajouter le commentaire, alors voici quelques mots: p) – Stormenet

+0

Vous voulez dire «ordures», je pense. – Jeff

1

La suggestion de Stormenet devrait vous orienter dans la bonne direction. Cependant, quand je vois votre exemple de séquence, j'irais probablement pour la variante padRight.

0

J'espère que votre boucle for est correctement écrite, puisque le second argument for-loop devrait être une instruction booléenne résultante. Le vôtre ne l'est pas.

Ainsi, au lieu:

for (int u = textBox1.Length; u = 40 ; u++) 

vous devriez écrire

for (int u = textBox1.Length; u <= 40 ; u++) 
+0

== n'est pas l'opérateur correct non plus. Il devrait être <, car le deuxième argument pour une boucle for est la condition sous laquelle vous bouclez. Dans votre échantillon corrigé, il ne fera que boucler lorsque u est égal à 40. – JustLoren

0

utilisant des ellipses ou des arrêts complets comme un indicateur visuel ne fonctionnera correctement que dans une console ou une autre application en utilisant une police à espacement fixe, et seulement puis, lorsque la largeur de l'étiquette est sensible aux tailles de police système de l'utilisateur. Si vous créez une application Web, vous pouvez avoir plus de chance avec un style de bordure inférieure pour que votre étiquette crée cette ligne directrice, une image flottant vers la droite qui se clipse sur le bord de l'étiquette ou une image d'arrière-plan répétée. dans le parent de l'étiquette remplacé par le texte de l'étiquette.

Questions connexes