ok, immaginavo.
però a questo punto non ho ben capito.
come si dovrebbe svolgere il tutto?
seguendo il flusso a livello teorico:
- clicco su un item menu e lancio il file chooser per scegliere la directory
- scelta la directory devo:
-- riempire una lista che riempie il model della jtable
-- attivare un button che serve per stoppare l'operazione
-- attivare la jprogressbar
- finito lo scan (o cliccando sul button) dovrei:
-- disattivare il button
-- disattivare la progress bar
-- avere la jtable bella pronta
ora, ho capito che dovrei fare l'update della gui nell'EDT, ma non ho capito come.
perchè se faccio balmante così:
- la lista viene riempita, e a fine operazione la jtable hai tutti i daticodice:FileChooserOpen fco = new FileChooserOpen(); fco.showOpenDialog(null); File dir = fco.getDir(); try { north.getBtnStop().setEnabled(true); bar.setIndeterminate(true); bar.setString("Loading..."); Scan utils = new Scan(); ArrayList<Record> list = utils.scanDir(dir.toPath()); countFile = list.size(); for (int i = 0; i < list.size(); i++) { String n = list.get(i).getNome(); String t = list.get(i).getTipo(); String p = list.get(i).getPath(); Object[] row = {n, t, p}; model.addRow(row); } north.getLabelCount().setText("No. file " + countFile); north.getBtnStop().setEnabled(false); resizeColumnWidth(); bar.setIndeterminate(false); bar.setString(""); } catch (IOException ex) { JOptionPane.showMessageDialog(null, ex.getMessage()); }
- ma l'attivazione / disattivazione del button / progressbar non avviene

Rispondi quotando
