1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Thread para JProgress

Bom dia galera, beleza?

Venho mais uma vez pedir a ajuda de vocês. A dúvida da vez é sobre Threads envolvendo JProgress.

O objetivo é ativar uma barra JProgress, usando o método setIndeterminate, enquanto se faz uma verificação de login.

Essa tarefa é ativada por um jButton, segue parte do código:

private void jButtonEntrarActionPerformed(java.awt.event.ActionEvent evt) {                                              
        jProgressBarLogin.setIndeterminate(true);

        String usuario = jTextUsuario.getText();
        String password = String.valueOf(jPasswordSenha.getPassword());

        DBConnectionThread objDBConnectionThread = new DBConnectionThread(usuario, password);
        objDBConnectionThread.run();

        boolean sucess = objDBConnectionThread.getSucessConnection();

        if(sucess) //Se confirmar o login
        {

            CompanyChoice objCompanyChoice = new CompanyChoice();
            objCompanyChoice.setUser(usuario);
            objCompanyChoice.setVisible(true);
            dispose();

        }else{
            JOptionPane.showMessageDialog(null, "Usuário ou senha inválidos.", "Erro", JOptionPane.ERROR_MESSAGE);
        }

    }
public class DBConnectionThread extends Thread{

    private String nome, senha;
    private boolean sucessConnection = false;

    public DBConnectionThread(String nome, String senha)
    {
        this.nome = nome;
        this.senha = senha;
    }


    @Override
    public void run()
    {
        LoginDao objLoginDao = new LoginDao(nome, senha);

        try {
            sucessConnection = objLoginDao.checkLogin(); //Realiza a verificao da senha e usuario.
        } catch (SQLException ex) {
            //Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    public boolean getSucessConnection()
    {
        return this.sucessConnection;
    }


}

Bom, quando clico no jButton, ele faz a verificação do login e executa o que era esperado (Avisa caso haja erro, continua para a proxima tela caso esteja certo). No entanto, o jProgressBar nem dá sinais de vida.

Alguém pode me ajudar? Também aceito qualquer tipo de dica.

Desde já, grato.

  • Ao invés de chamar objDBConnectionThread, tente chamar todo o bloco numa thread, deixando somente o jProgressBarLogin de fora.

    Marcus Becker   20 de mai de 2013
  • Desculpa, sou novato em programação Java e Threads. Você poderia me mostrar como ficaria ou algum outro exemplo para eu usar como base?

    Caio Corrêa   20 de mai de 2013
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

2 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags threads ou faça a sua própria pergunta.