bonjour à tous,

voila je n'arrive pas à appliquer un filtre dans une fenêtre, voici mes deux classes qui sont censé faire ça :

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
package mod;
 
import java.io.File;
import java.io.FileFilter;
 
/**
 *
 * @author alex
 */
public class filtreMod implements FileFilter{
 
     //Description et extension acceptée par le filtre
   private String description;
   private String extension;
   //Constructeur à partir de la description et de l'extension acceptée
   public filtreMod(String description, String extension){
      if(description == null || extension ==null){
         throw new NullPointerException("La description (ou extension) ne peut être null.");
      }
      this.description = description;
      this.extension = extension;
   }
   //Implémentation de FileFilter
   public boolean accept(File file){
      if(file.isDirectory()) {
         return true;
      }
      String nomFichier = file.getName().toLowerCase();
 
      return nomFichier.endsWith(extension);
   }
      public String getDescription(){
      return description;
   }
}
ainsi que :

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
package mod;

import java.io.File;
import java.io.FileFilter;
import javax.swing.JFileChooser;

/**
 *
 * @author alex
 */
public class boiteDialogue {
    File fichier;

/**
 *
 * @param titre donne le titre souhaité à la boite de dialogue
 * @return le fichier sélectionné
 */
    public File ouvertureBoite(String titre){
        //JFileChoose est ue boite de dialogue en graphique qui propose à l'utilisateur
        //de parcourir le disque et de choisir le fichier souhaité
        FileFilter model = new filtreMod("fichiers mod","mod");
        JFileChooser fc = new JFileChooser(".");
        fc.addChoosableFileFilter(model);  // LE SOUCI
        // la variable titre permet de donner un titre à ma boite de dialogue pour la rendre plus explicite
        fc.setDialogTitle(titre);
		int retour=fc.showOpenDialog(null);
                // si l'on a fait un choix de fichier celui-ci est récupéré dans la vairiable fichier
			if(retour==JFileChooser.APPROVE_OPTION){
				fichier=fc.getSelectedFile();
    }
                // nous retourne le fichier sélectionné
                return fichier;
    }

}
après plusieurs recherches, j'ai vu que dans ma classe filtreMod il aurait fallu mettre 'extends FileFilter' mais cela me cré des soucis dans l'autre classe du coup j'ai mis 'implements' et ca m'enlève un premier souci , de plus si je mets extends ca me mets 'no interface expected here'.
Deuxième souci ( à l'endroit où j'ai marqué plus haut LE SOUCI ) il me met un message d'erreur pour le type utilisé : required javax.swing.fileChooser.FileFilter

voilà donc je peux pas filtrer, si quelqu'un a une idée
merci d'avance