Probléme avec paintComponent()
Voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
| public class Fenetre extends JFrame
{
private JButton bouton = new JButton("Ajouter un mot");
private JButton bout = new JButton("Afficher la liste");
private JLabel label = new JLabel("Titre");
public JPanel pan = new Paneau();
public Fenetre() throws IOException
{
setTitle("Tous mes films et jeux");
setSize(500,300);
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.add(bouton);
c.add(bout);
bouton.addActionListener(new BoutonListener());
bout.addActionListener(new BoutListener());
pan.setBackground(Color.red);
c.add(pan);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pan.setLayout(new BorderLayout());
JPanel south = new JPanel();
south.add(bouton);
south.add(bout);
pan.add(south, BorderLayout.SOUTH);
label.setHorizontalAlignment(JLabel.CENTER);
pan.add(label, BorderLayout.NORTH);
this.setContentPane(pan);
}
class BoutonListener implements ActionListener
{
private String test;
public void actionPerformed(ActionEvent e)
{
test=JOptionPane.showInputDialog(null,"Entrez mot");
FileWriter writer = null;
try{
writer = new FileWriter("fichier.txt", true);
writer.write(test);
writer.write("\n");
}catch(IOException ex){
ex.printStackTrace();
}finally{
if(writer != null)
{try
{
writer.close();
}catch (IOException ex)
{
}
}
}
}
}
class BoutListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
BufferedReader LecteurBufferise = null;
String Chemin = "fichier.txt";
String ligneDonnee;
boolean eof = false;
try {
LecteurBufferise = new BufferedReader(new FileReader(Chemin));
while (eof != true) {
ligneDonnee = LecteurBufferise.readLine();
if (ligneDonnee != null )
{ if(ligneDonnee=="\n")
{
System.out.println(ligneDonnee);
}
else
{
System.out.println("Erreur");
}
}
else {
eof = true;
}
}
}
catch (FileNotFoundException ex) {
System.out.println("Fichier Non Trouvé !!");
}
catch (IOException ex) {
System.out.println("Erreur lecture ligne fichier !!");
}
finally {
try {
LecteurBufferise.close();
}
catch (IOException ex1) {
System.out.println("Erreur fermeture fichier !!");
}
}
}
}
}
public class Paneau extends JPanel
{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.drawString ("", 20, 30);
}
} |
Ma fenêtre contient un bouton "Ajouter un mot" , en cliquant sur ce bouton je peux ajouter un mot dans un fichier texte.
J'aimerai que le 2eme bouton "Afficher la liste" , affiche tous les mots contenu dans mon fichier texte dans la fenêtre et non pas en console....( ce que mon code fait actuellement)
Comment puis-je faire pour que la méthode paintComponent() affiche les mots contenu dans mon fichier avec g.drawString???
Il y a t-il une autre facon de procéder?
Merci