pessoal, estou com um problema que (pra mim) simplesmente não faz sentido… tenho um textfield cujo método .getText() funciona normalmente, porém, quando tento utilizar esse método dentro de uma thread, o .getText() retorna uma string vazia. Alguém sabe me dizer por que isso acontece? 
//evento que inicia o player (até aqui tudo bem)
public void actionPerformed(ActionEvent arg0) {
if (arg0.getSource() == jButton2) {
//cria a thread que controla o player
if (!playing) {
System.out.println(jTextField8.getText()); //aqui o println imprime o endereço da musica corretamente
playerThread = new Thread(new Audicao());
playerThread.start();
playing = true;
}
}
}
//metodo 'run()' da interface Runnable
public void run() {
try {
System.out.println(jTextField8.getText()); //aqui o println imprime um "", ou seja, nada... ¬¬
in = new FileInputStream(jTextField8.getText()); //e consequentemente aqui dá erro... :/
player = new Player(in);
player.play();
playing = false; //depois que terminou de tocar a musica seta playing = false
} catch (Exception e) {
e.printStackTrace();
}
PS.: ambos os métodos estão dentro da mesma classe