gpt4 book ai didi

java - JProgressBar 更新值行为(线程)

转载 作者:行者123 更新时间:2023-11-30 11:54:51 25 4
gpt4 key购买 nike

我似乎无法理解为什么在使用某些值时 JProgressBar 会有点卡住并停止进行计算。例如下面的代码将始终只显示零;

     ...
int value = (100/maxGenerations)*i; //maxGenerations = 2500
final int barValue = value;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
progressBar.setValue(barValue);
}
});

但是,如果使用相同的实现,我执行以下操作(当然不准确,因为只是垃圾计算):

     ...
int value = (i/100); //where 'i' increments until = 2500
final int barValue = value;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
progressBar.setValue(barValue);
}
});

有什么想法吗?

最佳答案

如果您知道进度的范围是多少(大概是 0 - 2500),您可以通过 progressBar.setMaximum(2500) 告诉 JProgressBar .这样您就不需要 barValue 变量,只需让进度条知道您的真实进度即可。

关于java - JProgressBar 更新值行为(线程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5360450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com