Swing高级JProgressBarTest进度条
来源:互联网 发布:国税数据质量整改 编辑:程序博客网 时间:2024/06/05 17:41
http://www.cnblogs.com/maxblog/archive/2010/09/22/1833159.html
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class JProgressBarTest extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;
public JProgressBarTest() {
super();
this.setTitle("到出数据");
this.setBounds(100,100,550,350);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel pnBasic = new JPanel();
final JButton button = new JButton("到出数据");
button.setBounds(100,10,100,100);
pnBasic.add(button);
final JTextArea textArea = new JTextArea();
textArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(textArea);
scrollPane.setBorder(BorderFactory.createTitledBorder("导出信息显示"));
scrollPane.setPreferredSize(new Dimension(0, 120));
scrollPane.setSize(new Dimension(400,200));
this.add(scrollPane,BorderLayout.CENTER);
final JProgressBar progressBar = new JProgressBar();
progressBar.setMinimum(0);
progressBar.setMaximum(50);
progressBar.setStringPainted(true); //显示提示信息
progressBar.setIndeterminate(false); //确定进度的进度条
pnBasic.setLayout(new FlowLayout(2,10,10));
pnBasic.add(button); //布局处理
this.add(pnBasic,BorderLayout.NORTH);
this.add(progressBar,BorderLayout.SOUTH);
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
button.setEnabled(false); //初始化时不可用
Progress pg=new Progress(progressBar,button,textArea,50);
pg.start();
}
});
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
JProgressBarTest jProgressBarTest = new JProgressBarTest();
jProgressBarTest.setVisible(true);
}
}
class Progress extends Thread{
private int progressValue = 100;
private JProgressBar progressBar;
private JButton button;
private JTextArea textArea;
public Progress(JProgressBar progressBar,JButton button,JTextArea textArea,int progressValue )
{
this.progressBar = progressBar;
this.button =button;
this.progressValue=progressValue;
this.textArea=textArea;
}
public void run()
{
for(int i=0;i<=progressValue;i++)
{
try
{
Thread.sleep(100);
}catch(Exception e)
{
e.printStackTrace();
}
progressBar.setValue(i); //进度值
progressBar.setString("导出"+i+"/"+progressValue+"文件"); //提示信息
textArea.append(progressBar.getString() + "\n");
}
progressBar.setIndeterminate(false); //采用确定的进度条
//progressBar.setIndeterminate(true); //不确定进度的进度条
progressBar.setString("导出完成."); //提示信息
button.setEnabled(true); //按钮可用
}
}
0 0
- Swing高级JProgressBarTest进度条
- Java从入门到精通 - JProgressBarTest 进度条设置
- 使用Java的Swing操作进度条高级操作
- Swing进度条
- Swing进度条
- swing 进度条
- swing进度条
- java Swing 进度条 时间进度条
- swing 进度条实现
- Swing 进度条使用
- Swing 进度条JProgressBar
- Swing进度条样例
- Swing进度条样例
- Swing圆形进度条
- java swing 确定进度条
- Swing高级控件
- 高级Swing 组件
- swing其他高级面板
- linux sh/bash 编程常用
- Struts2的几种传参方式
- Java Web 经典开发模式
- 隐马尔科夫学习五(一)
- hunnu--11550--欧拉函数
- Swing高级JProgressBarTest进度条
- MySQL执行外部sql脚本文件的命令
- 32位int整型数的二进制表示中1的个数
- 了解URL编码的基本概念,在javascript和java程序中使用内置的API进行编码和解码
- 欢迎使用CSDN-markdown编辑器
- Yii2设置别名函数(setAlias)和获取别名函数(getAlias)
- android应用开发全程实录-你有多熟悉listview? getView重写 inflate结合各种Adapter实例
- C++操作符重载
- XSS攻击及其解决方案