2010-01-18 5 views
22

J'ai une zone de texte avec du texte et je veux y ajouter des lignes, (les premières lignes + les autres lignes que je veux ajouter) mais ne fonctionne pas.Ajouter une nouvelle ligne à la fin d'un JtextArea

La façon dont je le fais en ce moment efface l'ancien texte et montre seulement les nouvelles lignes.

+0

considèrent un code très simple pour montrer quelques lignes dans la zone de texte – Johanna

+0

Est-ce à propos de java ou javascript? – bluszcz

+0

Web ou client intelligent? –

Répondre

45

Au lieu d'utiliser JTextArea.setText(String text), utilisez JTextArea.append(String text).

Ajoute le texte indiqué à la fin du document. Ne fait rien si le modèle est nul ou si la chaîne est vide ou vide.

Ceci ajoutera du texte à la fin de votre JTextArea.

Une autre option serait d'utiliser getText() pour obtenir le texte de la JTextArea, puis manipuler la chaîne (ajouter ou supprimer ou modifier la chaîne), puis utilisez setText(String text) pour définir le texte de la JTextArea être la nouvelle chaîne.

+1

belle réponse rapide! Merci – Johanna

+0

Vous êtes les bienvenus. – jjnguy

+0

N'oubliez pas d'ajouter \ n pour ajouter une nouvelle ligne – qpaycm

10

Êtes-vous en utilisant la méthode de » append(String)JTextArea pour ajouter du texte supplémentaire?

JTextArea txtArea = new JTextArea("Hello, World\n", 20, 20); 
txtArea.append("Goodbye Cruel World\n"); 
0

Lorsque vous souhaitez créer une nouvelle ligne ou envelopper dans votre TextArea vous devez ajouter \ n (saut de ligne) après le texte.

TextArea t = new TextArea(); 
t.setText("insert text when you want a new line add \nThen more text....); 
setBounds(); 
setFont(); 
add(t); 

C'est la seule façon que je pouvais le faire, peut-être il y a un moyen plus simple mais je havent découvert encore.

Questions connexes