`

Java进度条JProgressBar使用方法

阅读更多
Java进度条JProgressBar使用方法

package swimg;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
import javax.swing.Timer;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;


public class ProgressBar implements ActionListener,ChangeListener {
JFrame frame=null;
JProgressBar progressbar;
JLabel label;
Timer timer;
JButton b;
public ProgressBar(){
   frame=new JFrame("安装");
   frame.setBounds(100, 100, 400, 130);
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   Container contentPanel=frame.getContentPane();
   label=new JLabel("",JLabel.CENTER);
   progressbar = new JProgressBar();
   progressbar.setOrientation(JProgressBar.HORIZONTAL);
   progressbar.setMinimum(0);
   progressbar.setMaximum(100);
   progressbar.setValue(0);
   progressbar.setStringPainted(true);
   progressbar.addChangeListener(this);
   progressbar.setPreferredSize(new Dimension(300,20));
   progressbar.setBorderPainted(true);
   progressbar.setBackground(Color.pink);

   JPanel panel=new JPanel();
   b=new JButton("安装");
   b.setForeground(Color.blue);
   b.addActionListener(this);
   panel.add(b);
   timer=new Timer(100,this);
   contentPanel.add(panel,BorderLayout.NORTH);
   contentPanel.add(progressbar,BorderLayout.CENTER);
   contentPanel.add(label,BorderLayout.SOUTH);
   //frame.pack();
   frame.setVisible(true);


}


public void actionPerformed(ActionEvent e) {
   if(e.getSource()==b){
    timer.start();
   }
     if(e.getSource()==timer){
     int value=progressbar.getValue();
     if(value<100)
        progressbar.setValue(++value);
     else{
        timer.stop();
        frame.dispose();
     }
     }

}

public void stateChanged(ChangeEvent e1) {
   int value=progressbar.getValue();
   if(e1.getSource()==progressbar){
    label.setText("目前已完成进度:"+Integer.toString(value)+"%");
    label.setForeground(Color.blue);
   }

}
public static void main(String[] args) {
   ProgressBar app=new ProgressBar();
}


}
分享到:
评论

相关推荐

    Java JProgressBar进度条的使用

    这个是关于java中Frame中JProgressBar进度条的使用,一个弹窗小案例,希望大家喜欢

    java实现进度条.pdf

    Java进度条是指在Java GUI开发中,使用JProgressBar组件来显示进度的控件。JProgressBar可以显示进度的百分比,例如下载文件、安装软件等过程中,JProgressBar可以实时显示当前进度。 在本例中,我们使用了...

    java进度条使用实例

    通过读取文件来演示JProgressBar的功能!

    Java快速实现的进度条

    使用JProgressBar和SwingWorker做的Java进度条 简单方便 效果看这里:http://blog.csdn.net/kakashi8841/archive/2011/05/03/6388797.aspx

    Java Swing JProgressBar进度条的实现示例

    主要介绍了Java Swing JProgressBar进度条的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    进度条:使用 Swing GUI 类 JProgressBar 的优雅且易于使用的进度条对话框。-matlab开发

    可以使用两种方法显示和操作进度条。 在程序风格中,函数waitdialog 封装了Java Swing GUI 类JProgressBar 以增强视觉体验,但在功能上类似于内置函数waitbar。 在面向对象的风格中,ProgressDialog 是一个类,它...

    进度条使用方式

    JAVA JProgressBar的使用方式

    疯狂JAVA讲义

    学生提问:当我们使用编译C程序时,不仅需要指定存放目标文件的位置,也需要指定目标文件的文件名,这里使用javac编译Java程序时怎么不需要指定目标文件的文件名呢? 13 1.5.3 运行Java程序 14 1.5.4 根据...

    ProgressBar:带线程的JProgressbar

    进度条 带线程的JProgressbar 结果/输出 进度条

    用Java程序编写一个记事本程序的设计报告

    * JProgressBar:进度条。 * Thread:线程,负责更新进度条。 * Runnable:运行线程。 3. 类 runtime: 类 runtime 负责实现时间同步功能,包括获取当前时间、设置时间等。该类的成员变量包括: * getCurrentTime...

    学生管理系统

    JProgressBar jpb;//定义进度条 JLabel jl1;//用于在窗体的北部放一张图片,南部是进度条 int width,height;//用于获取显示屏分辨率大小 public static void main(String []args){ Index index=new Index(); ...

    Java制作软件启动界面.rar

    Java制作带Loading加载效果的软件启动界面,Thread splashThread; //进度条更新线程  JProgressBar progress; //进度条  public JWindowDemo() {  Container container=getContentPane(); //得到容器  ...

    Swing 线程之SwingUtilities invokeLater docx

    使用 invokeLater 方法可以确保更新进度条和输入框的操作是在 EDT 中执行的,从而避免了线程安全问题。同时,这也可以避免阻塞 EDT,导致画面卡住无法操作。 在实际开发中,我们需要注意 Swing 的线程模型,确保...

    javaSE代码实例

    16.4.9 防止错误的使用wait、notify、notifyAll方法 371 16.5 获取当前正在运行的线程 372 16.6 volatile关键字的含义与使用 372 16.7 小结 373 第17章 高级线程开发 374 17.1 线程池的使用 374 17.1.1...

    SWING图形界面开发手册.pdf

    Java 图形界面开发简介 .............. ................................ ................................ ..... 5 1. Swing1. Swing1. Swing 1. Swing1. Swing1. Swing1. Swing简介 ..............................

Global site tag (gtag.js) - Google Analytics