JavaSE 初学进度条JProgressBar

预备知识

在这里插入图片描述
创建进度条类后将其直接加入JFrame看看效果

public class JProgressBarDemo2 {
	public static void main(String args[]) {
		JFrame jf =new JFrame() ;
		JProgressBar jpb = new JProgressBar() ;
		
		jpb.setPreferredSize(new Dimension(400,30));//设置好首选大小利于显示
		jpb.setBackground(Color.black);
		
		jf.getContentPane().add(jpb);
		jf.setVisible(true);
		jf.pack();
	}
}

运行结果:
在这里插入图片描述
在程序中添加一句:jpb.setValue(50);
则设置当前进度值。
运行结果:
在这里插入图片描述
在此基础上再加句:jpb.setStringPainted(true);
则以字符串显示当前进度。
运行结果:
在这里插入图片描述
于是怎样使用进度条大致就明朗了。
剩下的就是添加事件监听让进度条动起来。
在以上代码基础上改变为:

public class JProgressBarDemo2 extends MouseAdapter{
	private JProgressBar jpb;
	private Timer timer;
	public static void main(String args[]) {
		new JProgressBarDemo2();
	}
	public JProgressBarDemo2() {
		JFrame jf =new JFrame() ;
		
		jpb = new JProgressBar();
		jpb.setPreferredSize(new Dimension(400,30));//设置好首选大小利于显示
		jpb.setBackground(Color.black);
		jpb.setValue(50);
		jpb.setStringPainted(true);
		
		timer = new Timer(100,new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				int value = jpb.getValue() ;
				jpb.setValue(++value);
			}
		});
		
		jf.addMouseListener(this);
		jf.getContentPane().add(jpb);
		jf.setVisible(true);
		jf.pack();
	}
	public void mouseEntered(MouseEvent arg0) {
		timer.start();
	}
}

运行结果:
当鼠标进入窗体会触发鼠标进入事件,timer开始执行,每隔100毫秒通知ActionListener监听器一次
在这里插入图片描述

posted on 2019-02-16 14:25  107国道道长  阅读(157)  评论(0编辑  收藏  举报

导航