本文实例形式详述了Java实现一个程序运行时的启动窗口效果,如常用的Microsoft Word、 Borland JBuilder 等,这样的窗口称为信息窗口。使用信息窗口的好处是可以使用户在等待软件主界面出现前的一段时间中得知软件运行状态。本例将演示如何来实现信息窗口,当打开程序时,信息窗口先显示,并在窗口上倒计时,直到“waiting 0”时,关闭该窗口,显示程序的主窗口。
该功能的主要实现方法如下:
一般来说,大多数的信息窗口是没有标题栏的,因此信息窗口不能由继承JFrame 类来实现,一种简单的做法是通过继承JWindow 来实现(当然继承Window 类也可以,但一个原则是尽量使用swing 中的界面
类)。另外,本例用到java.awt 包中的MediaTracker 类。使用该类的好处是可以更好地管理程序中要使用的图片,同时还可以保证图片和界面同时显示,避免了窗口显示后很久才显示图片的缺点。
具体操作步骤如下:
1.新建一个Project,取名为JSpleshWindowDemo,其他设置按默认值。
2.新建一个Application ,取名为JSpleshWindowDemo,主窗口取名为MainFrame,主窗口标题取名为JSpleshWindowDemo。
3.先来编写信息窗口的代码。新建一个新类SpleshWindow.java,继承java.swing.JWindow类。在SpleshWindow 类中,定义新的属性,代码如下:
?
4.向构造方法中添加代码,加载图片并初始化窗体,实现代码如下:
?
5.编写设置显示信息的方法,代码如下:
?
6.重置paint()方法来绘制图片和显示信息的方法,代码如下:
?
7.编写MainFrame 类,实现java.lang.Runnable 接口,并定义新的属性,设置如下:
?
8.向MainFrame 类的初始化方法中,添加运行信息窗口的代码,实现代码如下:
?
9.编写MainFrame 类的run()方法,如下所示:
?