如何同时使用 Java 中的 JProgressBar 模型设置所有值?


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();
   }
}

输出如下。进度条显示 −

进度条现在完全可见 −

更新于: 30-7-2019

67 次浏览

开启你的 职业生涯

完成课程获得认证

立即开始
广告