package com.yuanping.personalfinance.app;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JWindow;
import javax.swing.SwingUtilities;
public class WelcomePage extends JWindow{
//建立构造函数
public WelcomePage(String filename,JFrame frame,int waitTime){
super(frame);
//创建一个标签,在标签中显示画面。
JLabel label = new JLabel(new ImageIcon(filename));
getContentPane().add(label, BorderLayout.CENTER);
pack();
Dimension screensize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension labelsize = label.getPreferredSize();
//setSize(0,0);
setLocation(screensize.width / 2 - (labelsize.width / 2),screensize.height / 2 - (labelsize.height / 2));
//setLocation(500,500);
addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent e){
setVisible(false);
dispose();
}
});
final int pause = waitTime;
final Runnable closeRunner = new Runnable(){
public void run() {
setVisible(false);
dispose();
}
};
Runnable waitRunner = new Runnable(){
public void run() {
try{
Thread.sleep(pause);
SwingUtilities.invokeAndWait(closeRunner);
}catch(Exception e){
e.printStackTrace();
}
}
};
setVisible(true);
Thread splashThread = new Thread(waitRunner, "SplashThread");
}
/**
* @param args
*/
public static void main(String[] args) {
JFrame frame = new JFrame("欢迎界面");
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
WelcomePage splash = new WelcomePage("E:/zhaopian/SL370137.jpg",frame,1);
frame.pack();
//frame.setLocationByPlatform(true);
//frame.setLocationRelativeTo(splash);
frame.setVisible(true);
}
}