Ola pessoal. Possuo uma aplicacao que utiliza o Hibernate para realizar uma serie de buscas enquanto a interface grafica principal eh carregada.
Sao selects que vao de tabelas a dados que irao preencher os labels da mesma.
Gostaria de saber se ha a possibilidade de “ligar” essas buscas a uma JProgressBar para que o usuario tenha conhecimento de que os dados estao sendo carregados. Pois quando nao ha disponibilidade de conexao, por exemplo, ou esta muito lenta, tem-se a impressao de que o sistema esta travado.
Crie uma thread separada que carrega esses dados do banco de dados. Assim, se a conexão estiver ruim, o programa não trava.
Você pode exibir uma mensagem “carregando dados do banco…” enquanto estiver carregando. Exibir a porcentagem que já carregou (JProgressBar) é um pouco complicado, pois como que vai ser calculado isso? Pela porcentagem de registros que carregou?
fazer a barra incrementar de acordo com o progresso pode se tornar uma tarefa árdua (e ao meu pto de vista, desnecessario). Use:
progressBar.setIndeterminate( true );
Isso fará a barrinha ir de um lado pro outro, ate o processo terminar. Vc nao se preocupa com calculo de incremetno, e o usuario fica feliz pq sabe que algo esta acontecendo e nao está travado
Além de que o setIndeterminate (true), no look & feel padrão, é uma barra hipnótica (ela se movimenta de um lado para outro) que pode fazer seu usuário fazer coisas que ordinariamente não faria - você pode implantar alguma mensagem subliminar no seu código, do tipo “dê um aumento de salário para mim”…
Aham, normalmente é bom atender ao usuário (nem que seja para prometer algo para depois). Como usuário eu sei que uma progress bar faz bastante falta, mesmo que ela seja mostrada por 2 segundos.
Sim sim, a progress é necessaria nao estava me referido à ela…
Estava dizendo daquelas alterações que parece que o cara tava sem nada pra fazer no trabalho e pensou: “Ummm, vou dar um poco de trabalho pra esses desenvolvedores modafoca… já sei! uma mensagem de confirmação aqui… ou uma grid a mais ali…”