编程语言
首页 > 编程语言> > java – 让我的jProgressBar在1到100的计时器上运行

java – 让我的jProgressBar在1到100的计时器上运行

作者:互联网

我正在浏览这个帖子

How to make Timer countdown along with progress bar?

我想将此添加到我的代码中,这样我就可以得到一个jProgressBar和一个Button,(最好使用netbeans)

因此,当我按下按钮时,它会从0到100稳定地运行,我真的试图自己去做这个并且真的很生气,任何帮助都会很好.

解决方法:

利用@ Andrew的example,

import java.awt.GridLayout;
import java.awt.event.*;
import javax.swing.*;

class CountUpProgressBar extends JPanel {

    private JProgressBar bar = new JProgressBar(JProgressBar.HORIZONTAL, 0, 100);
    private JLabel label = new JLabel("", JLabel.CENTER);
    private Timer timer = new Timer(100, new ActionListener() {

        private int counter = 1;

        @Override
        public void actionPerformed(ActionEvent ae) {
            label.setText(String.valueOf(counter));
            bar.setValue(++counter);
            if (counter > 100) {
                timer.stop();
            }
        }
    });

    CountUpProgressBar() {
        super.setLayout(new GridLayout(0, 1));
        bar.setValue(0);
        timer.start();
        this.add(bar);
        this.add(label);
        JOptionPane.showMessageDialog(null, this);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {

            public void run() {
                CountUpProgressBar cdpb = new CountUpProgressBar();
            }
        });
    }
}

标签:java,swing,jprogressbar
来源: https://codeday.me/bug/20190530/1182074.html