Pessoa estou inserindo um gif animado num JLabel e inicialmente seto sua visibilidade como false.
A intenção é que quando o usuário clique no botão eu sete sua visibilidade para true e a animação apareça.
O problema está justamente aí! Eu estou setando mas a imagem não aparece de jeito nenhum!
PS: estou utilizando uma thread pra fazer isto, mas nada acontece…
Aqui está minha thread
public void run(){
while(!parar){//"parar" é uma variavel booleana que indica o funcionamento da thread
if(status)//"status" é uma variavel boleana que indica quando a imagem deve fica visivel ou não
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
jLabel5.setVisible(true);
System.out.println("mostraa imagem");//teste para ver se realmente ele entra na condição.
//na verdade entra mas somente quando sai do método em quem eu faço MinhaThread.setStatus(true);
}
});
else
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
jLabel5.setVisible(false);
}
});
}
try {
this.sleep(300);
} catch (InterruptedException ex) {
Logger.getLogger(GuiInit.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Eu a inicio no construtor da classe e quando preciso que a imagem apareça eu seto a variavel booleana "status " como true.
