Retour à la ligne dans un JTextArea ?
Résolu
tn
-
tn -
tn -
Bonsoir !
J'ai un problème, j'aimerai bien que à chaque passage de la boucle, dans le JTextArea il y est un retour à ligne, mais je n'y arrive pas, j'ai essayer le caractère \n ou encore \r mais ça ne marche pas.
Voici mon code :
Quelqu'un serait-il m'aider ? Quelqu'un aurait-il une solution ?
Merci pour votre aide !
J'ai un problème, j'aimerai bien que à chaque passage de la boucle, dans le JTextArea il y est un retour à ligne, mais je n'y arrive pas, j'ai essayer le caractère \n ou encore \r mais ça ne marche pas.
Voici mon code :
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class LevelOnePartOne extends JFrame{
public String[] tab1 = {"the mist","wet","the snow","the rain","the earth"};
public String[] tab2 = {"la brume","humide","la neige","la pluie","la terre"};
public String[] tab3 = {"le brouillard","mouiller","/","la flotte","le monde"};
public String[] tab4 = {"la buée","mouillé","/","/","le globe terrestre"};
JTextArea message;
public LevelOnePartOne(){
JPanel jp = new JPanel();
for(int i=0; i<2; i++){
message = new JTextArea(i+1+") "+tab1[i]+" : "+tab2[i]+", "+tab3[i]+", "+tab4[i]+".\n\n",20,30);
}
message.setLineWrap(true);
message.setFont(new Font("Arial",0,16));
message.setMargin(new Insets(15,15,15,15));
message.setEditable(false);
jp.add(message);
this.setVisible(true);
this.setResizable(false);
this.setContentPane(jp);
this.pack();
this.setLocationRelativeTo(null);
}
}
Quelqu'un serait-il m'aider ? Quelqu'un aurait-il une solution ?
Merci pour votre aide !
A voir également:
- Retour à la ligne java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Retour à la ligne excel - Guide
- Partager photos en ligne - Guide
- Retour à la ligne google sheet ✓ - Forum Google Docs
1 réponse
Bonsoir,
Je viens de tester et \n fonctionne bien.
Remarque : place ton setVisible(true) à la fin, sinon tu vas voir la fenêtre se redimensionner ou se déplacer à cause des instructions suivantes, ça va faire clignoter ta fenêtre, et c'est moche.
La confiance n'exclut pas le contrôle
Je viens de tester et \n fonctionne bien.
message = new JTextArea(i+1+")"+tab1[i]+" :\n"+tab2[i]+"\n"+tab3[i]+"\n"+tab4[i]+"\n\n",20,30);
Remarque : place ton setVisible(true) à la fin, sinon tu vas voir la fenêtre se redimensionner ou se déplacer à cause des instructions suivantes, ça va faire clignoter ta fenêtre, et c'est moche.
La confiance n'exclut pas le contrôle
Merci pour ton aide ! C'est vrai que ça marche bien... mais en fait ce n'est pas cela que j'aurais voulu faire.
J'aimerai bien que le JTextArea puisse donner comme résultat ceci :
1) The mist : la brume, le brouillard, la buée (et à partir d'ici qu'il puisse y avoir un retour à la ligne)
2) wet : humide, mouillé, mouiller
...
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class LevelOnePartOne extends JFrame{ public String[] tab1 = {"the mist","wet","the snow","the rain","the earth"}; public String[] tab2 = {"la brume","humide","la neige","la pluie","la terre"}; public String[] tab3 = {"le brouillard","mouiller","/","la flotte","le monde"}; public String[] tab4 = {"la buée","mouillé","/","/","le globe terrestre"}; JTextArea message; public LevelOnePartOne(){ JPanel jp = new JPanel(); for(int i=0; i<tab1.length; i++){ message = new JTextArea(i+1+") "+tab1[i]+" : "+tab2[i]+", "+tab3[i]+", "+tab4[i]+".\n\n",20,30); } message.setLineWrap(true); message.setFont(new Font("Arial",0,16)); message.setMargin(new Insets(15,15,15,15)); message.setEditable(false); jp.add(message); this.setResizable(false); this.setContentPane(jp); this.pack(); this.setLocationRelativeTo(null); this.setVisible(true); } }tu aurais une idée ? Merci !
Si je comprends bien ce que tu veux, il faudrait soit créer autant de JTextArea que de valeurs dans tes tableaux, soit ajouter le contenu de chacune des lignes au fur et à mesure dans le même JTextArea.
Comment est ce que je peux ajouter des lignes au fur est à mesure dans le même JTextArea ?
J'ai essayé d'une autre manière avec un JTextPane mais il y a le même problème.
Serait tu m'aider pour qu'au résultat le programme affiche chaque composante des tableaux lignes par lignes dans le même JTextArea ou JTextPane ?
Voici les code :
La "base de donnée qui contient les tableaux qui eux-mêmes contiennent les informations"
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class L1P1 extends JFrame{ public String[] tab1 = {"the mist","wet","the snow","the rain","the earth"}; public String[] tab2 = {"la brume","humide","la neige","la pluie","la terre"}; public String[] tab3 = {"le brouillard","mouiller","/","la flotte","le monde"}; public String[] tab4 = {"la buée","mouillé","/","/","le globe terrestre"}; }La classe qui affichera le contenue de chaque tableau ligne par ligne dans un JTextArea
Par exemple :
1) the mist : la brume, le brouillard, la buée
2) Wet : humide, mouiller, mouillé
...
import javax.swing.*; import java.awt.*; public class LearnL1P1 extends JFrame{ JTextArea message = new JTextArea("",20,30); L1P1 l1p1 = new L1P1(); public LearnL1P1(){ super("Vocabulary : level 1 - part 1"); JPanel jp = new JPanel(); for(int i=0; i<l1p1.tab1.length; i++){ message.setText(i+1+") "+l1p1.tab1[i]+" : "+l1p1.tab2[i]+", "+l1p1.tab3[i]+", "+l1p1.tab4[i]+".\n\n"); } message.setLineWrap(true); message.setFont(new Font("Arial",0,16)); message.setMargin(new Insets(15,15,15,15)); message.setEditable(false); jp.add(message); this.setResizable(false); this.setContentPane(jp); this.pack(); this.setLocationRelativeTo(null); this.setVisible(true); } }Merci pour votre aide, car je n'arrive pas à afficher les composantes des tableaux ligne par ligne dans le même JTextArea !
J'ai enfin trouvé la solution !
Au lieu de faire un setText, j'ai fait un append("\n") est le JTextArea afficher correctement le contenu des tableaux !
Merci pour ton aide !