一般进度条使用是给用户一种友好提示,让用户感觉这个事情正在做,而不是系统没有反应了;
JProgressBar的代码文档大家可以参考JDK1.6,比如构造函数有哪些,常用的方法有哪些在此就不多叙述;
一般使用情况是,点击按钮是做一件事情,比如备份,进度条出现并增加进度表示正在进行或到什么程度,事情结束时,进度条显示满进度,并消失;
下面代码说明了把数据库中的表导出到excel中,关键是思路,希望对用到进度条的朋友有点启发,有问题可以给我邮件.
1、按钮点击事件:btnBackup.addActionListener(new ActionListener(){
backup(tables);
}
2、backup()方法
protected void backup(List tables) {
new Thread(new BackupThread(tables)).start();
}
3、关键是定义线程
class BackupThread implements Runnable{
List tables;
public BackupThread(List tables){
this.tables = tables;
}
public void run() {
ExcelBis bis = new ExcelBis(); //自己定义的类,实现excel导出
bar.setMaximum(100); //设置进度条的属性
bar.setVisible(true);
boolean flag = true;
//由于业务需要最多只有4张表格
for(int i=0;i<tables.size();i++){
int va = bis.back(tables.get(i).toString());
if(va == 0)
bar.setValue((100/tables.size())*(i+1));
else{
lblInfo.setText("提示: 备份失败,请和管理员联系.");
flag = false;
break;
}
}
if(flag){
lblInfo.setText("提示: 备份成功.");
bar.setVisible(false);
bar.setValue(0);
}
}
}