Bom Dia Pessoa,
Ja estou ficando quase louco em uma implementação onde não estou obtendo resultado. Não estou sabendo trabalhar com o jProgressBar. É o seguinte: Tenho uma classe que lê um arquivo Excel, tenho uma tela com um botão que chama o jFileChoorse para selecionar o arquivo, nesse momento, ele lê o Arquivo e faz a inserção dos dados no banco, para visualizar o processo, na classe de leitura do arquivo, coloquei um System.out.println(); para ver o processo, mas não estou conseguindo colocar uma Barra de Progresso. No Frame onde tem o botão eu coloquei um ProgresBar. Abaixo, segue a classe de ler o arquivo e do Frame:
package testesqlite;
import java.io.File;
import java.io.IOException;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
public class LerArquivo {
private int cont ;
public int getCont() {
return cont;
}
public void setCont(int cont) {
this.cont = cont;
}
public void Ler(String string, Biblia biblia) throws IOException, BiffException {
Workbook wk = Workbook.getWorkbook(new File(string));
//new File("VT-01-Gànesis.xls")
//abertura da planilia
Sheet st = wk.getSheet(0);
//variavel linhas
int lin = st.getRows();
int x = 100/lin;
for (int i = 0; i < lin; i++) {
Cell a1 = st.getCell(0, i);
Cell a2 = st.getCell(1, i);
Cell a3 = st.getCell(2, i);
Cell a4 = st.getCell(3, i);
String as1 = a1.getContents();
String as2 = a2.getContents();
String as3 = a3.getContents();
String as4 = a4.getContents();
biblia.setLivro(as1);
biblia.setCapitulo(as2);
biblia.setVersiculo(as3);
biblia.setTexto(as4);
System.out.print(as1 + " - ");
System.out.print(as2 + " - ");
System.out.print(as3 + " - ");
System.out.println(as4);
this.setCont(i);
System.out.println("Arquivo com: " + i);
}
}
}
com a Interface:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package testesqlite;
import java.awt.Color;
import java.io.File;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
/**
*
* @author marcusvinicius
*/
public class LerProgress extends javax.swing.JFrame {
/**
* Creates new form LerProgress
*/
public LerProgress() {
initComponents();
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
.....
private void jButtoncarregarArquivoActionPerformed(java.awt.event.ActionEvent evt) {
//int i = 0;
try{
JFileChooser abertura = new JFileChooser();
LerArquivo la = new LerArquivo();
SQLite dbCon = new SQLite("biblia.db");
Biblia biblia = new Biblia();
biblia.getLivro();
biblia.getCapitulo();
biblia.getVersiculo();
biblia.getTexto();
dbCon.initDB();
// Possibilita a seleção de vários arquivos
abertura.setMultiSelectionEnabled(true);
abertura.showOpenDialog(null);
File[] files = abertura.getSelectedFiles();
for (File file : files) {
jLabelarquivoLido.setText(file.getName());
la.Ler(file.toString(), biblia);
System.out.println(la.getCont());
}
}catch(Exception e){
e.getMessage();
}
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new LerProgress().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButtoncarregarArquivo;
private javax.swing.JLabel jLabelarquivoLido;
private javax.swing.JProgressBar jProgressBarArquivo;
// End of variables declaration
}
Agradeço muito quem me ajudar.
Abraços!