Sbagliavo alla grande insomma
Grazie della correzione

, ho capito il codice anche se ho tolto
@Override perchè altrimenti mi dava errore, e ci ho messo un pò a capire
EventQueue.invokeLater(new Runnable() {
public void run() {
new MainFrame().edtShow();
}
});
mi spiazzava il ; dopo le parentesi perchè non riuscivo a capire da dove arrivasse e a chi servisse.
Codice:
// il ; è dell involeLater, lo chiude. Con invokeLater istanzio l' interfaccia Runnable e poi sempre al suo interno definisco il run al quale gli passo il metodo edtShow della classe MainFrame
giusto?
Sta sera o domani provo a modificare il codice per fargli prendere un file audio, speriamo di riuscirci. Non dovrei commettere lo stesso errore 2 volte.