Ciao a tutti, ho un problema nel mio programma che secondo me è causato dal JFileChooser.
Praticamente premendo un bottone voglio che mi si apra un JFileChooser in modo da poter caricare o una cartella (contenente degli mp3) oppure direttamente un mp3. E questo l'ho fatto semplicemente in questo modo:
JFileChooser fc = new JFileChooser() ;
fc.setDialogType(JFileChooser.OPEN_DIALOG) ;
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIR ECTORIES) ;
int returnVal = fc.showOpenDialog(null) ;
if (returnVal == JFileChooser.APPROVE_OPTION) {
//VOGLIO APRIRE QUI UN JDIALOG
//JDialog jd = new JDialog() ;
//jd.add(new JButton()) ;
//jd.setVisible(true) ;
File file = fc.getSelectedFile() ;
//DA QUI IN POI IL PROGRAMMA CI METTE QUALCHE SECONDO
//POSSO ANCHE CANCELLARE IL CODICE CHE HO MESSO QUI E ATTENDERE
//QUALCHE SECONDO IN QUESTO MODO: Thread.Sleep(1000) ;
//TANTO L'EFFETTO E' UGUALE
if (file.isDirectory())
esaminaDirectory(file) ;
else if (file.isFile() && file.getName().endsWith(".mp3"))
esaminaFile(file) ;
}
E questo codice funziona benissimo...
Ora il mio problema è questo: vorrei che quando l'utente spinga sul bottone Apri del FileChooser mi si apra subito un JDialog con una JProgressBar per far sapere all'utente la percentuale di completamento del caricamento. Il problema però non è legato alla progressBar ma legato all'apertura di un semplice JDialog o JFrame una volta che l'utente ha premuto sul pulsante Apri del FileChooser.
Nel senso che quando l'utente ha premuto sul pulsante Apri del JFileChooser mi si apre si il JDialog ma vuoto!! Il pulsante compare dopo la if esterna (if (returnVal == JFileChooser.APPROVE_OPTION) ... ).
E non riesco a capire per quale motivo! Le ho provate veramente tutte!
Vorrei non fosse vuoto il JDialog in quei pochoi secondi appunto perchè voglio metterci dentro una JProgressBar.
C'è qualcuno che potrebbe aiutarmi??
Grazie!

Rispondi quotando

