Utilizando o JProgressBar em uma classe

4 respostas
C

Olá pessoal, estou construindo uma aplicação que faz um ciclo muito grande de loop, utilizando for. Criei um formulário e uma classe a parte com todos os for que precisso na aplicação. Mas agora eu gostaria de usar um JProgressBar para acompanhar a evolução dos loops. Tentei fazer o seguinte, na classe que contem os for:

public void MeusFor(JProgressBar bar){

for…{

bar.setValue(i);

}

}

O programa até aceita tudo não da erro, mas o formulario fica tão ocupado com os for que não mostra o JProgressBar movendo, tem alguma forma de resolver isso?

4 Respostas

fabim

“resolver” nao é bem a palavra… vc precisa entender como funciona, pq isso nao é um problema…

A questao é que vc está executando tanto o processamento (seus FORs) qto a interfaca grafica na mesma Thread ( a thread main )… vc precisa criar uma thread separada para o seu processo, dessa maneira vc vai ver a sua progress bar sendo atualizada corretamente…

procura mais aqui no Forum sobre isso pq tem um zilhao de topicos ensinando a fazer isso… tem ate um Artigo do guj que dá um exemplo.

ViniGodoy

Só complementando. A thread é a da AWT, não a main. Normalmente em, aplicações swing, a thread main inicial morre rapidamente.

Dá uma lida aqui:
http://www.guj.com.br/posts/list/57739.java#303640

Para uma explicação mais detalhada.

fabim

boa viny :wink:

C

Valeu pessoal, brigadão!

Criado 7 de maio de 2007
Ultima resposta 7 de mai. de 2007
Respostas 4
Participantes 3