Bom pessoal gostaria de usar uma JProgressBar para carregar a abertura do meu programa
pois o mesmo demora um pouquinho para preencher todas as tabelas pois tenho mais de 50 mil registros
no meu sql server e fica um pouco lento apenas na hora de iniciar,estou tentando fazer desta
forma mas não sei ao certo qual processo irei colocar no doInBackground(),estou usando o
initialize() da minha aplicação principal so que dessa forma a barra começa a carregar so quando
o programa acaba de inicializar e não desde o inicio,o dialog que contém a barra
aparece de cara mas a barra não carrega…
Eu queria que a barra pegasse o tempo que meu programa demora para carregar e não desse jeito carregando
depois de iniciar…
//main principal
public static void main(String[] args) {
Interface application = new Interface();
application.show();
}
//construtor do meu programa principal
public Interface() {
super();
initialize();
}
//initialize do programa principal
private void initialize() {
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
this.setSize(new java.awt.Dimension(980,650));
this.setBounds(new java.awt.Rectangle(20,50,980,650));
this.setContentPane(getJContentPane());
this.setResizable(false);
this.setJMenuBar(getJJMenuBar());
this.setTitle("Monitoramento");
this.addComponentListener(new java.awt.event.ComponentAdapter() {
public void componentShown(java.awt.event.ComponentEvent e) {
final Loading barra = new Loading();
barra.setVisible(true);
SwingWorker worker = new SwingWorker(){
protected Object doInBackground() throws Exception {
initialize();
return null;
}
protected void done() {
barra.setVisible(false);
}
};
worker.execute();
}
});
}
//construtor da classe dialog que contem a JProgressBar
public Loading() {
this.setTitle("Carregando...");
JProgressBar progress = new JProgressBar();
progress.setIndeterminate(true);
progress.setSize(200,20);
getContentPane().add(progress);
pack();
}
Consegui fazer a barra funcionar certinho na geração dos relatórios,
mas para carregar a aplicação não…Se alguem puder ajudar,com alguma ideia
utilizando SwingWorker… vlw… []'s