Foro de elhacker.net

Programación => Java => Mensaje iniciado por: alzehimer_cerebral en 26 Octubre 2009, 13:10 pm



Título: JFileChooser
Publicado por: alzehimer_cerebral en 26 Octubre 2009, 13:10 pm
Hola,

estoy jugando con el JFileChooser desde Netbeans usando la interfaz de diseño/codigo...

Desde la interfaz de diseño me he creado FileChooser y ahora lo que quiero es asignarle la accion al boton de abrir el fichero, lo unico que desde la vista de codigo no veo ninguna referencia al codigo del boton Open, que debo hacer??  Me creo el boton a nivel de codigo y le asigno una accion??

Salu2

alzehimer_cerebral


Título: Re: JFileChooser
Publicado por: alzehimer_cerebral en 26 Octubre 2009, 13:55 pm
Haber, voy a intentar explicarme mejor:

Me he diseñado una clase ProbandoJFrame extends javax.swing.JFrame con el editor de diseño de netbeans en el cual existe un boton Abrir y una tabla...

Al hacer click en el boton abrir se invoca a la clase Open extends javax.swing.JFrame implements ActionListener, esta clase es la que gestiona el JFileChooser...

Lo que necesito es que se pueda elegir un fichero .xml en el JFileChooser para que se cargue en una tabla que tengo en la clase ProbandoJFrame.. 

Me seguis???  Lo que pasa es que en la clase Open he añadido un FileChooser desde la interfaz de diseño y en la interfaz de codigo no salen las zonas correspondientes a las acciones de los botones que genera la ventana FileChooser, es decir el boton Abrir y Cancelar.  Me gustaria saber como hacer para en la clase Open coger el fichero que el usuario elige (un .xml) para pasarselo a la clase ProbandoJFrame en la cual leere dicho fichero y lo cargare en la tabla correspondiente...

Haber si alguien me puede guiar un poco ya que que estoy atascado.

Salu2.

alzehimer_cerebral


Título: Re: JFileChooser
Publicado por: Leyer en 26 Octubre 2009, 15:14 pm
netbeans no me gusta... :-\  pero para seleccionar archivo seria asi .

Código
  1. JFileChooser chooser = new JFileChooser();
  2. chooser.showOpenDialog(new JFrame());
  3. File fileXML=chooser.getSelectedFile();


Título: Re: JFileChooser
Publicado por: alzehimer_cerebral en 26 Octubre 2009, 15:57 pm
Okis ya lo tengo, muchas gracias.

Lo que pasa es que me gustaria tener el objeto File en la clase ProbandoJFrame para cargar su contenido en la tabla...

Que puedo hacer??  Se me ocurre hacer un metodo en la clase ProbandoJFrame al cual invoco desde la clase Open para asi poder tener acceso a la tabla que es un atributo de la clase ProbandoJFrame, que os parece??

Salu2.

alzehimer_cerebral


Título: Re: JFileChooser
Publicado por: Leyer en 26 Octubre 2009, 16:20 pm
claro si funcionaria aunke tambien podrias llevar el obj file para la class ProbandoJFrame bien sea haciendo el obj publico|protected o le haces un getter para optener el obj desde ProbandoJFrame usando open.getFileXml o protegido open.FileXml

Saludos



Título: Re: JFileChooser
Publicado por: sapito169 en 26 Octubre 2009, 20:35 pm
-por que todo lo quieren hacer con netbeans para usar un wisard no tienes que saber nada aparte de leer
-deja de usar netbeans y usa el peor ide que puedas usar mejor si es block de notas una ves que logres hacer esto nunca mas vas a bolver a tener problemas como este esepto si son conplicadisimos


Título: Re: JFileChooser
Publicado por: Leyer en 27 Octubre 2009, 00:39 am
 :o :o :o :o :o te apoyo full en eso.  ;-) solo para mi los programadores en java de verdad son los que hacemos todo desde 0. :-*


Título: Re: JFileChooser
Publicado por: wikijeik en 30 Mayo 2012, 00:49 am
hola que tal amigos
necesito saber como utilizar el JFileChooser desde eclipse.
 o como puedo abrir un directorio para buscar un archivo presionando un simple boton que diga buscar .


Gracias ;D


Título: Re: JFileChooser
Publicado por: Proteus1989 en 30 Mayo 2012, 08:28 am
Pues parte del código ya la tienes

netbeans no me gusta... :-\  pero para seleccionar archivo seria así .

Código
  1. JFileChooser chooser = new JFileChooser();
  2. chooser.showOpenDialog(new JFrame());
  3. File fileXML=chooser.getSelectedFile();

En tu caso tendrías que añadir a un botón un actionListener que ejecutase ese código y en lugar de poner "new JFrame() tu pondrías la variable donde tienes guardado el componente botón.

Algo así

Código
  1. jButton1.addActionListener(new ActionListener()
  2. {
  3. public void actionPerformed(ActionEvent evt)
  4. {
  5. JFileChooser chooser = new JFileChooser();
  6. //chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
  7. //chooser.setCurrentDirectory(File.listRoots()[0]);
  8. //if (!chooser.isMultiSelectionEnabled()) chooser.setMultiSelectionEnabled(true);
  9. if ((chooser.showOpenDialog(jButton1))!=JFileChooser.APPROVE_OPTION) return; // Si no elige un archivo termina el método.
  10. File x = chooser.getSelectedFile();
  11. }
  12. });

Las líneas comentadas son opcionales. Ahora solo necesitarías tener previamente un JFrame creado con un botón añadido llamado jButton1