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á