如何使用 Java 中的 JProgressBar 模型一次性设置所有值?
java 8object oriented programmingprogramming更新于 2025/9/8 6:04:17
getModel() 方法用于一次性设置 JProgressBar 的所有值 −
int newVal = 5; int newMin = 0; int newMax = 100; progressBar.getModel().setRangeProperties(newVal, 0, newMin, newMax, true);
以下是使用进度条模型一次性设置所有值的示例 −
示例
package my;
import javax.swing.*;
public class SwingDemo extends JFrame {
JProgressBar progressBar;
int i = 0;
SwingDemo() {
int min = 0;
int max = 1000;
progressBar = new JProgressBar(min, max);
int newVal = 5;
int newMin = 0;
int newMax = 100;
progressBar.getModel().setRangeProperties(newVal, 0, newMin, newMax, true);
progressBar.setBounds(70, 50, 120, 30);
progressBar.setValue(0);
progressBar.setStringPainted(true);
add(progressBar);
setSize(550, 150);
setLayout(null);
}
public void inc() {
while (i <= 1000) {
progressBar.setValue(i);
i = i + 50;
try {
Thread.sleep(100);
} catch (Exception e) {}
}
}
public static void main(String[] args) {
SwingDemo s = new SwingDemo();
s.setVisible(true);
s.inc();
}
}
输出如下。进度条显示 −

进度条现在完全可见 −


