package com.vci.client.workflow.task;
|
|
import java.awt.BorderLayout;
|
import java.awt.Dimension;
|
import java.awt.Toolkit;
|
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;
|
|
import com.vci.client.LogonApplication;
|
|
import javax.swing.*;
|
|
import java.awt.*;
|
import java.awt.event.*;
|
|
public class ProgressSample extends JDialog implements Runnable{
|
private Thread thread = null;
|
private Thread taskThread = null;
|
public ProgressSample(Thread thread){
|
super(LogonApplication.frame,true);
|
this.thread = thread;
|
progressBar();
|
startThread();
|
}
|
|
private void progressBar() {
|
final JProgressBar aJProgressBar = new JProgressBar(0, 100);
|
aJProgressBar.setIndeterminate(true);
|
JButton aJButton = new JButton("关闭");
|
ActionListener actionListener = new ActionListener() {
|
public void actionPerformed(ActionEvent e) {
|
dispose();
|
}
|
};
|
aJButton.addActionListener(actionListener);
|
|
this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
|
|
centerScreen();
|
|
Container contentPane = this.getContentPane();
|
contentPane.add(aJProgressBar, BorderLayout.CENTER);
|
contentPane.add(aJButton, BorderLayout.SOUTH);
|
this.setSize(300, 100);
|
}
|
|
/**
|
* 显示在屏幕中间
|
* @param theFrame
|
*/
|
private void centerScreen() {
|
this.setTitle("执行中。。。");
|
this.setSize(new Dimension(600,100));
|
this.setLayout(new BorderLayout());
|
this.setResizable(false);
|
this.setModal(true);
|
this.setLocation((Toolkit.getDefaultToolkit().getScreenSize().width-400)/2, (Toolkit.getDefaultToolkit().getScreenSize().height-100)/2);
|
}
|
|
private void startThread(){
|
taskThread = new Thread(){
|
public void run() {
|
try {
|
thread.start(); // 处理耗时任务
|
thread.join();
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
dispose();
|
};
|
};
|
taskThread.start();
|
}
|
|
public void run() {
|
}
|
}
|