随笔 - 154  文章 - 60  trackbacks - 0
<2007年11月>
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

声明:

该blog是为了收集资料,认识朋友,学习、提高技术,所以本blog的内容除非声明,否则一律为转载!!

感谢那些公开自己技术成果的高人们!!!

支持开源,尊重他人的劳动!!

常用链接

留言簿(3)

随笔分类(148)

随笔档案(143)

收藏夹(2)

其他

学习(技术)

观察思考(非技术)

搜索

  •  

最新评论

阅读排行榜

评论排行榜

代码
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.reflect.*;

public class ProgressSample {
    
    
static class BarThread extends Thread {
    
private static int DELAY = 500;
    JProgressBar progressBar;    

    
public BarThread(JProgressBar bar) {
      progressBar 
= bar;
    }


    
public void run() {
      
int minimum = progressBar.getMinimum();
      
int maximum = progressBar.getMaximum();
      Runnable runner 
= new Runnable() {
        
public void run() {
          
int value = progressBar.getValue();
          progressBar.setValue(value
+1);
        }

      }
;
      
for (int i=minimum; i<maximum; i++{
        
try {
          SwingUtilities.invokeAndWait(runner);
          
// Our task for each step is to just sleep
          Thread.sleep(DELAY);
        }
 catch (InterruptedException ignoredException) {
        }
 catch (InvocationTargetException ignoredException) {
        }

      }

    }

  }

  
  
  
public static void main(String args[]) {
    
// Initialize
    final JProgressBar aJProgressBar = new JProgressBar(0100);
    
final JButton aJButton = new JButton("Start");

    aJProgressBar.setStringPainted(
true); // 显示百分比字符
    aJProgressBar.setIndeterminate(false); // 不确定的进度条
    
    ActionListener actionListener 
= new ActionListener() {
      
public void actionPerformed(ActionEvent e) {
        aJButton.setEnabled(
false);
        Thread stepper 
= new BarThread(aJProgressBar);
        stepper.start();
      }

    }
;

    aJButton.addActionListener(actionListener);

    JFrame theFrame 
= new JFrame("Progress Bars");
    theFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    Container contentPane 
= theFrame.getContentPane();
    contentPane.setLayout(
new GridLayout(2,1));
    contentPane.add(aJProgressBar);
    contentPane.add(aJButton);
    theFrame.setSize(
300100);
    theFrame.setVisible(
true);
  }
  
}
posted on 2007-11-07 09:58 lk 阅读(5851) 评论(1)  编辑  收藏 所属分类: j2se

FeedBack:
# re: swing使用进度条的一个例子(整理)[未登录] 2014-10-27 14:32 ddd
ddddd  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问