Action Bouton -Java-

Bonjour Tout le monde ,

j'espere que vous pourrez m'aider :

je suis en train de creer une interface en utilisant java. je dispose d'un "JTextArea" et d'un "Bouton" . Quand je clique sur le bouton il accède à un fichier et m'affiche son contenu .
Sachant que le fichier est organisé en ligne je veux que à chaque fois je clique sur le bouton il m'affiche uniquement une ligne :
1er clic ----> 1ere phrase
2eme clic ---> 2eme phrase
.
.
.
neme clic ---> niem phrase

jusqu'à la fin du fichier.
j'arrive pas à trouver l'astuce ...si quelqu'un peux juste m'orienter .

Merci d'avance .

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Le mieux c'est d'ouvrir ton fichier au départ, et de le garder ouvert tout au long du programme et ainsi passer à la ligne au fur et à mesure.

    public MaFenetre(File fichier)
    {
        final Scanner sc = new Scanner(fichier);
        final JTextArea area = new JTextArea();
        final JButton btn = new JButton();
    
        // ...
    
        btn.addActionListener(new ActionListener()
        {
             public void actionPerformed(ActionEvent e)
             {
                  if (sc.hasNextLine())
                      area.setText(sc.nextLine());
                  else
                      area.setText("");
             }
        }
    
        // ...
    }
    1. Ok KX, merci beaucoup je vais essayer de le faire puisque ça m'arrange que le fichier reste ouvert .
      1. En fait KX j'arrive pas à trouver le package java.util.Scanner Sous JBuilder !!?
      2. Modérateur
        Je ne connais pas JBuilder, mais a priori ce n'est qu'un IDE, c'est dans la JDK que sont les classes, assures toi juste que tu as au moins la version 5...
      3. Ok d'accord sinon est ce que je ne peux pas utiliser le Tokenizer ??
      4. Modérateur
        Tu traites ton fichier comme tu veux, ce n'est pas le plus important...
      5. j'arrive pas à rajouter Scanner comment je fais pour que l'IDE utilise JDK 1.7 au lieu 1.4
    2. KX j'aimerais te poser une autre question c'est a propos du Layout qu'est ce que cela veut dire ?? et comment je peux positionner mes objets à ma guise !!??
      1. Modérateur
        Justement, le Layout sert à positionner les objets, ici j'ai mis un GridLayout de 2 lignes et 1 colonne, de manière à placer les deux objets l'un en dessous de l'autre, mais il y a d'autres types de Layout, plus ou moins compliqués à mettre en oeuvre, et en les combinant tu devrais arriver à tes fins :
        A Visual Guide to Layout Managers