Contador exibido num jlabel [RESOLVIDO]

6 respostas
SandroSoftwares

gente, a duvida é simples mas aqui nao funcionou…

como atualizar um label em tempo de execucao exibindo um contador?

o label está dentro de um panel dentro de um jframe

for (int cont = 0; cont<10;cont++){

jlabel1.setText(""+cont) ;

}

esse jlabel1.setText(""+cont) não funciona…

6 Respostas

vinians

SandroSoftwares:
gente, a duvida é simples mas aqui nao funcionou…

como atualizar um label em tempo de execucao exibindo um contador?

o label está dentro de um panel dentro de um jframe

for (int cont = 0; cont<10;cont++){

jlabel1.setText(""+cont) ;

}

esse jlabel1.setText(""+cont) não funciona…


Amigo creio que pode fazer assim:

for (int cont = 0; cont&lt;10;cont++){
jlabel1.setText(""+cont) ;
repaint();
}

Ah, e não se esqueça de colocar um temporizador ou vai atualizar muito rapido.
Outra coisa, sempre que postar código, coloque entre as tag de código.

Flws!

SandroSoftwares

se alguém tiver outro exemplo agradeço…

pensei que seria coisa simples mas pelo visto não é tão fácil assim…

ViniGodoy

Você precisa rodar o código numa thread separada. Senão, ele rodará na thread do Swing e a interface só será atualizada ao final da execução.

new Thread(new Runnable() { public void run() { for (int cont = 0; cont&lt;10;cont++){ jlabel1.setText(&quot;&quot;+cont); //O ideal seria rodar isso dentro do EventQueue.invokeLater } } }).start();

ViniGodoy

Leia:
http://download.oracle.com/javase/tutorial/uiswing/components/progress.html
http://download.oracle.com/javase/tutorial/uiswing/concurrency/worker.html

ViniGodoy

Movido para o fórum de interface gráfica.

SandroSoftwares

OBRIGADO!

RESPONDIDO AQUI: http://www.guj.com.br/java/242424-contador-x-joptionpane-resolvido

Criado 21 de maio de 2011
Ultima resposta 22 de mai. de 2011
Respostas 6
Participantes 3