Ajuda: JProgressbar e métodos

2 respostas
B

Boa noite a todos!

Hoje tenho uma outra dúvida, acredito que seja simples, mas apesar de procurar por tudo, ainda não encontrei o que preciso:

Tenho um Frame com vários compoentes (JLabel, JButton, etc) e um JProgressBar. Quero que ao usuário clicar em um botão, ele inicia o JProgressBar. Mas quero o JProgressBar corra durante a execução de alguns métodos. Por exemplo:

O Tempo que o JProgressBar vai durar é conforme a execução dos métodos:

UsuarioDAO.criaTabela();  
UsuarioDAO.preencheTabela();  
ClientesDAO.criaTabela();

E assim por diante. Quero que o JProgressBar vai sendo preenchido conforme a execução dos métodos acima.

Isso é possível?

VEJA O CÓDIGO ABAIXO:

package testestcc.views;  
  
import java.sql.Connection;  
import java.sql.Statement;  
  
import javax.swing.ImageIcon;  
import javax.swing.JButton;  
import javax.swing.JFrame;  
import javax.swing.JProgressBar;  
  
import testestcc.conexao.Conexao;  
  
public class BarraProgresso extends JFrame {  
  
   private static final long serialVersionUID = 1L;  
  
   private JButton button;  
   private JProgressBar progressBar;  
  
   public BarraProgresso() {  
      setTitle("Barra de Progresso");  
      setSize(247, 250);  
      setLayout(null);  
      setLocationRelativeTo(null);  
      setResizable(false);  
      setIconImage(new ImageIcon(getClass().getResource(  
            "../images/screen.png")).getImage());  
      setVisible(true);  
  
      progressBar = new JProgressBar();  
      progressBar.setBounds(10, 10, 200, 30);  
      add(progressBar);  
  
      button = new JButton("Iniciar");  
      button.setBounds(10, 60, 100, 25);  
      add(button);  
   }  
  
   // QUERO A PROGRESS BAR VÁ SENDO PREENCHIDA CONFORME A EXECUÇÃO DO MÉTODO ABAIXO...  
   // (EU SEI QUE É RÁPIDO ESSE MÉTODO, MAS VOU INCLUIR OUTROS METODOS TAMBÉM, ESSE É UM EXEMPLO...  
     
   public static boolean criaTabela() {  
      Connection conexao = Conexao.getConexao();  
      try {  
         Statement st = conexao.createStatement();  
         st.execute("CREATE TABLE usuario ("  
               + "loginUsuario varchar(20) not null PRIMARY KEY,"  
               + "senhaUsuario varchar(100) not null,"  
               + "nomeUsuario varchar(30) not null,"  
               + "emailUsuario varchar(50) not null,"  
               + "tipoUsuario integer(1) not null);");  
         return true;  
      } catch (Exception e) {  
         System.out.println("DEU ERRO...");  
      } finally {  
         Conexao.closeConexao();  
      }  
      return false;  
   }  
  
   public static void main(String[] args) {  
      new BarraProgresso();  
   }  
}

Obrigado desde já

2 Respostas

Filipe_A

Bom dia,

Veja se este tutorial te ajuda em algo:
http://www.java2s.com/Tutorial/Java/0240__Swing/SwingWorkerandProgressBar.htm

[]s

Dagson

Olá Pessoal

Estou com a mesma dificuldade do brianhenschel, é o seguinte preciso

colocar o JProgressbar para carregar conforme o tempo de execução dos métodos.

Já procurei em alguns tutoriais, mas ainda não conseguir resolver esta tarefa, se alguém
puder me ajudar, obrigado.

Criado 21 de janeiro de 2013
Ultima resposta 21 de out. de 2013
Respostas 2
Participantes 3