问题描述
我正在尝试使用 JProgressBar,但我的代码真的很慢,每次运行我的应用程序时都几乎崩溃。一开始,进度条设置为不确定,然后当你点击“停止”按钮时(在我的程序中,当后台任务完成时),进度条设置为确定并开始快速填充。
如何提高这段代码的效率?我没有找到很多关于不确定 JProgressBar 的资源。
这是我的代码:
public class test extends JFrame {
static JFrame f;
static JProgressBar b;
public static void main(String[] args) {
f = new JFrame("ProgressBar demo");
f.setLayout(new BorderLayout());
JPanel p = new JPanel();
b = new JProgressBar();
b.setValue(0);
b.setStringPainted(true);
b.setIndeterminate(true);
p.add(b);
f.add(p,BorderLayout.norTH);
JButton button = new JButton("stop");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
b.setIndeterminate(false);
fill();
}
});
f.add(button,BorderLayout.soUTH);
f.setSize(500,500);
f.setVisible(true);
//fill();
}
// function to increase progress
public static void fill() {
int i = 0;
try {
while (i <= 100) {
b.setValue(i + 10);
Thread.sleep(1000);
i += 20;
}
} catch (Exception e) {}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)