7
votes

Comment aligner le texte dans un jtextfield?

J'ai un jtextfield avec des limites assez grandes, le texte ne se comporte toutefois pas comme si je le veux. XXX

Comment puis-je le faire, mon texte s'aligne comme celui-ci xxx

éditer: Utilisation de jtextarea corrigé mon problème. Merci.


5 commentaires

Pourquoi avez-vous un tel champ de texte en premier lieu? Pourquoi ne pas la laisser prendre sa hauteur préférée et avoir une ui de bonne recherche?


Comment je fais ça? Actuellement, j'ai un setbounds (10, 10.200.400) puis-je modifier cela en SetLocation (10,10) et SETPREFERREDSIZE (200 400) ?


Vous ne devez jamais appeler setbounds () et setLocation () . C'est le travail du gestionnaire de mise en page. Vous ne devriez pas appeler SetPreferredSize () non plus. Le JTextefield connaît sa taille préférée en fonction du nombre de colonnes que vous avez spécifiées lors de la construction. Utilisez des gestionnaires de mise en page: docs.oracle.com/javase/Tutorial/uiswing/ mise en page / utilisation.html


Pourquoi ne pas aller pour jtextarea?


Pourquoi les commentateurs insistent-ils à la question de savoir ce qui semble bon sur une interface utilisateur que vous n'avez jamais vue?


3 Réponses :


13
votes

jtextarea code> s'aligne sur le dessus.

ou utilisez un jlabel code>: p> xxx pré>

et l'appel: P>

myLabel.setHorizontalAlignment(SwingConstants.LEFT);
myLabel.setVerticalAlignment(SwingConstants.TOP);


0 commentaires

0
votes

C'est une question assez ancienne mais j'en ai eu besoin et cela résouda cela pour moi.

Veuillez noter que cette solution suppose qu'aucun I18N n'est utilisé. Si vous avez activé les fonctions I18N, javax.swing.plaf.basic.basictexitextFieldui.Create (élément) pour trouver la bonne classe.

Vous pouvez personnaliser la position de texte vertical dans le champ View: < / p> xxx

}


0 commentaires

1
votes
mytext.setHorizontalAlignment(SwingConstants.LEFT);
mytext.setVerticalAlignment(SwingConstants.TOP);
this is enough, and works for JTextField

0 commentaires