使用Eclipse的朋友,对于Eclipse的启动初始化界面都很熟悉,Eclipse启动时有一个启动画面,在Eclipse所有的初始化工作都完成之后,启动画面会自动消失,同时JBuilder也一样有这样的启动画面。
怎样做出这样的效果呢?
1、首先我们建立一个WindowSplash的类。
在类里面有三个方法:
// 准备初始化窗口
public static void prepareSplash(JFrame f)
// 显示初始化窗口
public static void startSplash()
// 将初始化窗口销除
public static void stopSplash()
2、prepareSplash()函数代码
public static void prepareSplash(JFrame f) { Toolkit toolkit = Toolkit.getDefaultToolkit(); windowSplash = new Window(f); Image image = toolkit.getImage("./images" + File.separator + "splash.gif"); System.out.println(image.getWidth(f)); System.out.println(image.getHeight(f)); ImageCanvas canvas = new ImageCanvas("./images" + File.separator + "splash.gif"); windowSplash.add(canvas, "Center"); Dimension scmSize = toolkit.getScreenSize(); int imgWidth = image.getWidth(f); int imgHeight = image.getHeight(f); windowSplash.setLocation(scmSize.width / 2 - (imgWidth / 2), scmSize.height / 2 - (imgHeight / 2)); windowSplash.setSize(imgWidth, imgHeight); }
这里我们使用Swing里面的Window类,制作了一个没有边框的窗口,我们在窗口里面加入了一个图片
3、显示启动界面,在初始化JFrame的各个可视化组件,初始化后台数据库等(如数据库的连接)之前调用
public static void startSplash() { windowSplash.setVisible(true); windowSplash.toFront(); }
4、在所有的初始化工作完成之后,调用stopSplash()函数,停止显示启动画面
public static void stopSplash() { windowSplash.dispose(); }
具体实例应用,请参见我的图片浏览器的这个应用,详情请点击http://tntxia.iteye.com/blog/551831