java启动界面的实现,java启动界面实现,在应用程序启动的时候,如
分享于 点击 23617 次 点评:219
java启动界面的实现,java启动界面实现,在应用程序启动的时候,如
在应用程序启动的时候,如果初始化的时间较长,通常需要安排一个表示欢迎使用本应用程序的启动界面,初始化完成时该界面消失,这就是平时说的快闪窗口(SplashWindows)...
[Java]代码
import java.awt.BorderLayout;import java.awt.Dimension;import java.awt.Font;import java.awt.Label;import java.awt.Toolkit;import java.net.URL;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JWindow;public class JSplashWindow extends JWindow implements Runnable{ Thread splashThread=null; public JSplashWindow(){ Dimension screen=getToolkit().getScreenSize(); JPanel splash=new JPanel(new BorderLayout()); URL url=getClass().getResource("robot1_256.png"); if(url!=null){ splash.add(new JLabel(new ImageIcon(url)),BorderLayout.CENTER); } setContentPane(splash); pack(); setLocation((screen.width-getSize().width)/2, (screen.height-getSize().height)/2); } public void start(){ this.toFront(); splashThread=new Thread(this); splashThread.start(); } public void run() { try{ setVisible(true); Thread.sleep(3000); }catch(Exception e){ System.out.println(e.toString()); } this.dispose(); showFrame("Rendroid Bate1"); } static void showFrame(String title){ Dimension ScreenSize=Toolkit.getDefaultToolkit().getScreenSize(); JFrame frame=new JFrame(title); frame.setSize(400,300); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); if(frame.getSize().height>ScreenSize.height){ frame.getSize().height=ScreenSize.height; } if(frame.getSize().width>ScreenSize.width){ frame.getSize().width=ScreenSize.width; } frame.setLocation((ScreenSize.width-frame.getSize().width)/2, (ScreenSize.height-frame.getSize().height)/2); Label lb=new Label("Welcome To Rendroid"); frame.getContentPane().add(lb,BorderLayout.CENTER); lb.setFont(new Font("default",1,36)); frame.setVisible(true); } public static void main(String []args){ JSplashWindow Jsplash=new JSplashWindow(); Jsplash.start(); }}
用户点评