Ho provato ad aggiungere qualcosa di simile al tuo consiglio... ma non va
Forse è meglio che posto tutto il metodo:
//UTILIZZO UNA NUOVA CLASSE PER RICEVERE OPERAZIONI COL MOUSE
class Copia implements ActionListener {
//METODO PRINCIPALE DELLA CLASSE
public void actionPerformed(ActionEvent evento) {
//RESETTO L'ELEMENTO GRAFICO
spazio3.setText(" ");
//CONTROLLO CHE AZIONE EFFETTUARE
if (bottone1.getText().equals("COPIA")){
//SE NON VIENE SPECIFICATO L'AMBIENTE NON FA NIENTE
if ((!(spazio1.getText().equals(""))) && (!(spazio2.getText().equals(""))) && (!(spazio.getText().equals("")))){
//UTILIZZO BLOCCO try-catch PER EVITARE ECCEZIONI
try{
//CREO NUOVO FILE PER VEDERE DOVE SALVARE ELEMENTO
File cartella = new File("C:\\Nozz Programmi\\Desktop\\Unicam\\Programmazione\\Proget tiEclipse\\" + spazio.getText());
//CONTROLLO CHE IL PERCORSO DOVE SALVARE L'ELEMENTO ESISTA
if (cartella.exists()==false)
//LANCIO ERRORE
spazio3.setText("ERRORE!!! DIRECTORY NON VALIDA");
else{
//CREAZIONE NUOVO FILE PER VEDERE SE LA CLASSE ESISTE
File classe = new File("C:\\Nozz Programmi\\Desktop\\Unicam\\Programmazione\\Proget tiEclipse\\" + spazio.getText() + "\\bin\\" + spazio1.getText() + ".class");
//CONTROLLO CHE ESISTA
if (classe.exists() == false)
//LANCIO ERRORE
spazio3.setText("ERRORE!!! CLASSE NON TROVATA");
else {
//CREAZIONE NUOVO OGGETTO PER GESTIERE COMANDI DOS
Runtime run = Runtime.getRuntime();
//COPIO I VARI ELEMENTI NELLA CARTELLA
run.exec("cmd /c copy ProgettiEclipse\\" + spazio.getText() + "\\bin\\*.class");
//RENDO GLI ELEMENTI NON MODIFICABILI
spazio.setEditable(false);
spazio1.setEditable(false);
spazio2.setEditable(false);
//CAMBIO NOME AL PULSANTE
bottone1.setText("ELIMINA");
//RENDO IL PULSANTE DISPONIBILE
bottone.setEnabled(true);
Thread t = Thread.currentThread();
t.sleep(100);
}//else1
}//else2
}catch (IOException a){} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}//if non vuoti
}//if copia
else{
//UTILIZZO BLOCCO try-catch X EVITARE ECCEZIONI
try{
//CREAZIONE NUOVO OGGETTO PER GESTIERE COMANDI DOS
Runtime run = Runtime.getRuntime();
//CANCELLO TUTTI I FILE CON QUELLA ESTENSIONE
run.exec("cmd /c del *.class");
//CANCELLO IL FILE DI APPOGGIO
run.exec("cmd /c del a.txt");
}
catch(IOException a){}
//CAMBIO NOME AL PULSANTE
bottone1.setText("COPIA");
//RENDO IL PULSANTE DISPONIBILE
bottone.setEnabled(false);
//RENDO LE SCRITTE VUOTE
spazio.setText(" ");
spazio1.setText(" ");
spazio2.setText(" ");
spazio3.setText(" ");
//RENDO I BOTTONI MODIFICABILI
spazio.setEditable(true);
spazio1.setEditable(true);
spazio2.setEditable(true);
}//else
}}
//CREAZIONE OGGETTO CHE RICEVE EVENTO
ActionListener premiBottone1 = new Copia();
//COLLEGO L'ESECUZIONE DELLE ISTRUZIONI AL BOTTONE
bottone1.addActionListener(premiBottone1);
Si tratta di un metodo che gestisce il click su un bottone (che cambia azione e titolo alternativamente). In 1 caso controllo se nel percorso esistono diversi file e copio gli elementi, nell'altro caso (che funziona sempre) cancello gli elementi