Bonjour, je ne sais pas si je poste au bon endroit mais je prend le risque =)
Alors voila, je demande votre aide pour un problème vraiment... vraiment embêtant. J'ai une classe qui me sert a afficher le contenu d'un fichier dans un JTextArea. Jusque la tout va bien si a partir de mon main j'utilise cette classe tout va niquel, mais quand je me sert de cette classe a partir d'une autre classe, c'est a dire j'ai une classe ou se trouve un ActionListenner, et je veux qu'en cliquant sur un bouton, ma classe qui affiche le contenu d'un fichier s'éxécute, mais la probleme, la JFrame est bien créé mais le fichier ne s'affiche pas...
Voici ma classe qui fait tout le boulot:
et celle ou se trouve l'ActionListenner :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 public class AfficheCode extends JFrame { private JButton bouton = new JButton("Rafraichir"); private JButton fermer = new JButton("Fermer"); private JPanel container = new JPanel(); private JPanel container2 = new JPanel(); String f = ""; String fichierContenu = ""; JTextArea champTexte = new JTextArea(); private JScrollPane scroll = new JScrollPane(champTexte); Compteurlignes cl; public AfficheCode(String fa) { setSize(1000, 700); setLocation(0, 0); getContentPane().setLayout(new BorderLayout()); this.setVisible(true); this.add(container, BorderLayout.SOUTH); this.add(container2, BorderLayout.CENTER); this.getContentPane().add(scroll, BorderLayout.CENTER); container.add(bouton); container.add(fermer); champTexte.setLineWrap(true); champTexte.setWrapStyleWord(true); add(champTexte); f=fa; LireFichier(); } public void LireFichier() { try { RandomAccessFile raf = new RandomAccessFile(f, "r"); String ligne; while ((ligne = raf.readLine()) != null) { fichierContenu += ligne+"\n"; } champTexte.setText(fichierContenu); } catch (IOException e) { System.out.println("erreur dans: " + e); } } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 public Compteurlignes() throws HeadlessException { super(); setSize(640, 700); setLocation(300, 0); JScrollPane sclp = new JScrollPane(); sclp.setAutoscrolls(true); sclp.setOpaque(true); getContentPane().setLayout(new BorderLayout()); getContentPane().add(sclp, BorderLayout.CENTER); sclp.getViewport().add(editPane); editPane.setEditable(false); this.setVisible(true); EditorKit edK = new StyledEditorKit(); editPane.setEditorKit(edK); bouton.addActionListener(this); parcourir.addActionListener(this); affCode.addActionListener(this); this.add(container, BorderLayout.SOUTH); this.add(container2, BorderLayout.NORTH); lab = new Label("Choisir un fichier java ou dossier."); container2.add(lab); container2.add(parcourir); container.add(bouton); container.add(affCode); affCode.setEnabled(false); bouton.setEnabled(false); } public void actionPerformed(ActionEvent e) { JButton Bouton = (JButton) e.getSource(); if (Bouton == bouton) { compteLignes(chemin); addTotal(); } if (Bouton == parcourir) { Parc pa = new Parc(); ref = pa.getFichier(); Compteurlignes fr = new Compteurlignes(); dispose(); fr.test(ref); } if (Bouton == affCode) { AfficheCode aff = new AfficheCode(chemin); System.out.println(chemin); } }
Donc je résume a partir de mon main si je crée une variable X et que je met dans x un chemin de fichier, tout fonctionne en faisant :
Mais la a partir de mon ActionListenner, la JFrame s'affiche et c'est tout j'ai rien d'autre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part AfficheCode aff = new AfficheCode(x);
Merci de votre aide.
Partager