el FileDialog no deja escoger SOLO directorios

jpgmahedero
28 de Abril del 2004
Hola a todos, por razones de compatibilidad solo puedo utilizar AWT y no swing. Necesito escoger mediante un FileDialog un directorio, pero el dialogo solo permite escoger ficheros, entonces para seleccionar el directorio que me interesa, hace falta que hay previamente un fichero dentro y escoger el path de éste.

Alguien me puede echar una mano o enviarme algo de código? Muchas gracias

Josu?
28 de Abril del 2004
Podrias hacer algo asi:

JFileChooser fc = new JFileChooser();
fc.setFileSelectionMode(1);
int status = fc.showOpenDialog(this);
if(status == JFileChooser.APPROVE_OPTION){
java.io.File file = fc.getSelectedFile();
jEMensajes.setText(file.getAbsolutePath());
}

y eso es todo

eldrum
28 de Abril del 2004
Es una solucion un poco elaborada, y no se hasta que punto funcionara todo lo bien que debiera, pero bueno, menos es nada., asi que pruebala.

El FileDialog tiene un metodo que es el de " void setFilenameFilter(FilenameFilter filter) " siendo FilenameFilter una interfaz (del paquete java.io) que debes implementar. Su unico metodo es

public boolean accept(File dir, String name) ;

Devuelves verdadero para aceptar un fichero (y mostrar) y falso para negar un fichero (y ocultarlo), prueba a hacer entonces un:

public class Particular implements FilenameFilter
public boolean accept(File dir, String name){
File f = new File(dir, name);
return f.isDirectory();
}
}

El problema es que no se hasta que punto se relentizara el sistema.... Juega con esa interfaz y prueba otras alternativas parecidas.