- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 JProgressBar
,我已将其最大值设置为 150。使用 javax.swing.Timer
,我更新进度条并增加 time
变量减 1。问题是,一旦 time
达到 100,进度条将不再更新,并保持在如下所示的位置:
为什么会出现这种情况?有什么办法可以解决这个问题吗?
public class Test {
int time = 0, duration = 150;
JProgressBar progressBar;
Timer timer;
public Test() {
GridBagLayout layout = new GridBagLayout();
GridBagConstraints constraints = new GridBagConstraints();
constraints.fill = GridBagConstraints.BOTH;
JFrame frame = new JFrame();
frame.setLayout(layout);
constraints.gridwidth = GridBagConstraints.REMAINDER;
timer = new Timer(98, new ActionListener() {
public void actionPerformed(ActionEvent ev) {
time++;
if (time == duration) {
time = 0;
timer.stop();
}
}
});
timer.start();
progressBar = new JProgressBar(0,duration);
progressBar.setValue(0);
progressBar.setStringPainted(false);
layout.setConstraints(progressBar,constraints);
frame.add(progressBar);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
ProgressBarUpdater pbUpdater = new ProgressBarUpdater();
pbUpdater.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent ev) {
progressBar.setValue(time);
}
});
pbUpdater.execute();
}
public static void main(String[] args) {
new Test();
}
public class ProgressBarUpdater extends SwingWorker<Void,Void> {
@Override
public Void doInBackground() {
setProgress(0);
while (time <= duration)
setProgress(Math.min(time,duration));
return null;
}
}
}
最佳答案
您的问题是,worker 中的 setProgress()
范围为 0 到 100。
进行此更改,它将按预期工作:
public class ProgressBarUpdater extends SwingWorker<Void,Void> {
@Override
public Void doInBackground() {
setProgress(0);
while (time <= duration)
setProgress((Math.min(time,duration) * 100) / duration); // convert to percent
return null;
}
}
关于java - JProgressBar 没有完全填满,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27431633/
我正在运行 Play! 2.3 使用 Akka 的多线程应用程序。每个线程访问 MySQL 数据库并运行一些计算。每次我运行一组这样的任务时,应用程序的内存占用量都会增加,这主要是由于 JDBC4Pr
我是 JavaScript 新手,正在尝试实现选择排序来亲自接触数组(注意:我知道有一个内置的排序函数)。不过,我遇到了一些奇怪的行为。 这是我的代码: function selectionSort(
我正在使用 unsemantic grid创建我的布局。好吧,我有一个容器,其中有一个标签和一个输入文本。标签的宽度为 20% 然后 margin-rightof 1em 然后我想让容器中的其余空间由
看看这张取自 morsmachine.dk/go-scheduler 的著名图片 灰名单是 P 的本地运行队列。如果此队列变空,它们将被全局运行队列中的 go routines 填充。 问题是,谁来填
(帖子创建于 2016 年 10 月 5 日) 我注意到每次运行图像并删除它时,我的系统都不会恢复到原来的可用空间量。 我应用于容器的生命周期是: > docker build ... > docke
我有一个应用程序,它在启动时运行两个或三个完整的 GC。有很多堆空间,不需要运行任何 GC(minor 或 full)。然而,在 gc 日志中,我可以看到 permgen 被填满,然后立即运行完整
我正在尝试制作可视化 VStack 属性的 VStack 示例应用 但是我的 VStack 无法填满屏幕的宽度 我在互联网上尝试了很多解决方案(frame modifier、HStack with S
[已解决] 所以我在页面顶部有一个高度恒定的 div,我希望在它下面有一个 iFrame 来填充页面的其余部分。 Google Images 和 LinkedIn 做的事情非常相似 参见:http:/
我正在尝试使我的标题框与我的图像大小相同,同时又不失去 flex-slider 的响应能力,有什么建议吗? http://jsfiddle.net/bmBnF/10/ 疯狂的K 最佳答案 我通过将其设
我有一个元素是 的兄弟元素动态填充 hello 我想要 固定在屏幕底部直到动态 s 要求将其向下推到 View 下方。 我尝试了以下但无法获得我想要的结果。 该元素位
我是一名优秀的程序员,十分优秀!