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");
}
}
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值