如何在达到100%后将jprogressbar的值设置为零?
我使用了以下代码,但没有完全符合我的要求:
private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
Thread runner = new Thread(){
@Override
public void run(){
counter = pb_MINIMUM;
while(counter <= pb_MAXIMUM){
Runnable runme = new Runnable(){
public void run(){
jProgressBar1.setValue(counter);
}
};
SwingUtilities.invokeLater(runme);
counter++;
try{
Thread.sleep(100);
}catch(Exception e){
}
}
}
};
runner.start();
if(jProgressBar1.getMaximum()==pb_MAXIMUM){
jProgressBar1.setValue(0);
}
}
感谢我能得到的任何帮助......
答案 0 :(得分:2)
您启动线程后会直接调用setValue(0)
(执行所有工作并增加进度条的值)。此时尚未完成任何工作,并且该方法不会等待您的线程完成。相反,您可以在while循环之后立即包含代码(与您在内部相同但值为零)。