`
悠悠我心2010
  • 浏览: 16760 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

splash swing 启动进度条

阅读更多
java -jar -splash:xxx.jpg xxx.jar
SplashScreen-Image: EPM-300dpi_Large.jpg

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics2D;
import java.awt.SplashScreen;

import javax.swing.JFrame;
import javax.swing.JLabel;

public class TestMitiThread {
	public TestMitiThread(){
		
		System.out.println("thread test");
	};
	
	
   	
    	
        System.out.println(Thread.currentThread().getName() + "Thread start");
        Progress ps = new Progress("Progress");
        ps.start();
        
        
        
     
//            JFrame frame = new JFrame("Splash Me2");
        	System.out.println("xxxxxxx");
//            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//            JLabel label = new JLabel("Hello, Splash", JLabel.CENTER);
//            frame.add(label, BorderLayout.CENTER);
//            frame.setSize(300, 95);

            	System.out.println("No.");
                for (int i = 0; i < 100; i++) {
                    try {
                      Thread.sleep(70);
                    } catch (InterruptedException ignored) {
                    }
                    System.out.println("zzzzzzz:"+i);
                  }
//                  b=true;
                  synchronized( ps.condition ){
                	  ps.condition.notify();
                  }
//            frame.setVisible(true);
        
        
        
        
//        new FrameShow("Progress",ps.condition).start();
        System.out.println(Thread.currentThread().getName() + "Thread over");
    }

}

class Progress extends Thread {
	public Object condition=new Object();
    public Progress(String threadName) {
        super(threadName);
//        this.condition=tt;
    }
    public  void  run() {        
          SplashScreen splash = SplashScreen.getSplashScreen();
        if(splash!=null){
            Graphics2D g = (Graphics2D) splash.createGraphics();
            Dimension dim = splash.getSize();
            int wt=2;
            System.out.println("width:"+dim.width);
            System.out.println("height:"+dim.height);
            for (int i = 0; i < 26; i++) {
              g.setColor(Color.blue);
              g.fillRect(11, 260, i*26, dim.height - 278);
              g.drawString(i*4+"% ",(11+i*26),275);
              splash.update();
              try {
                         if(i*4!=96){
                           Thread.sleep(400);
                         }else{
                           synchronized( condition ) { 
                             condition.wait();
                           }
                         }
                       } catch (InterruptedException ignored) {
                       }
            }
            }else{
                 System.out.println("splash is null");
                 }
    }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics