Swing 编写欢迎界面(引)
来源:互联网 发布:linux 大文件查找 编辑:程序博客网 时间:2024/06/06 01:21
Swing 编写欢迎界面 2005-2-3 15:19:00
几乎所有时髦的应用都有一个欢迎界面。欢迎界面既是宣传产品的方法之一,而且在长时间的应用启动过程中,欢迎界面还用来表示应用正在准备过程中。
下面是一个最简单的欢迎界面实现:
class SplashWindow1 extends JWindow
{
public SplashWindow1(String filename, Frame f)
{
super(f);
JLabel l = new JLabel(new ImageIcon(filename));
getContentPane().add(l, BorderLayout.CENTER);
pack();
Dimension screenSize =
Toolkit.getDefaultToolkit().getScreenSize();
Dimension labelSize = l.getPreferredSize();
setLocation(screenSize.width/2 - (labelSize.width/2),
screenSize.height/2 - (labelSize.height/2));
setVisible(true);
screenSize = null;
labelSize = null;
}
}
SplashWindow1类从Swing的JWindow派生。JWindow是一个容器,它没有其他窗口所具有的各种窗口元素,如标题条、窗口管理按钮,甚至连突出显示的边框也没有。因此,JWindow对于制作欢迎界面来说是非常合适的。上面的代码假定图形文件在当前目录。图形通过ImageIcon装入内存,然后它就被放到了JWindow的中心。接着,窗口被pack(),这使得Swing把窗口调整到适当的大小,最后窗口被移到了屏幕的中心。
如果我们运行上面的程序,可以发现虽然欢迎画面确实出现在屏幕中央,但遗憾的是,它却不会关闭!要关闭欢迎画面,我们需要加入更多的代码:
class SplashWindow2 extends JWindow
{
public SplashWindow2(String filename, Frame f)
{
super(f);
JLabel l = new JLabel(new ImageIcon(filename));
getContentPane().add(l, BorderLayout.CENTER);
pack();
Dimension screenSize =
Toolkit.getDefaultToolkit().getScreenSize();
Dimension labelSize = l.getPreferredSize();
setLocation(screenSize.width/2 - (labelSize.width/2),
screenSize.height/2 - (labelSize.height/2));
addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
setVisible(false);
dispose();
}
});
setVisible(true);
}
}
和原先的SplashWindow1类相比,这个SplashWindow2类唯一的区别在于多出了一个安装到JWindow上的匿名MouseListener。经过这个改动之后,用户可以点击欢迎界面关闭它。
现在我们有了一个很不错的欢迎界面,它可以通过点击的方法关闭,但它不会自己消失。接下来我们要加入代码,使得欢迎界面在显示一定的时间之后自动消失。这里我们要考虑到运用线程。
class SplashWindow3 extends JWindow
{
public SplashWindow3(String filename, Frame f, int waitTime)
{
super(f);
JLabel l = new JLabel(new ImageIcon(filename));
getContentPane().add(l, BorderLayout.CENTER);
- Swing 编写欢迎界面(引)
- java使用工厂模式编写计算器(swing界面)
- 用Java Swing 写欢迎界面
- JMF:编写swing界面,播放一首歌
- 用Java Swing编写简单的测试小工具界面(源码)
- 用Java Swing编写简单的测试小工具界面(源码)
- swift 编写欢迎界面-- ios开发
- 安卓欢迎界面的编写
- swift 编写欢迎界面-- ios开发
- Java Swing编写小工具图形化界面
- 跟着BOY学习开发cocos2d-x 游戏 实战篇(2)之 欢迎 界面编写
- 跟着BOY学习开发cocos2d-x 游戏 实战篇(2)之 欢迎 界面编写
- 学习开发cocos2d-x 游戏 实战篇(2)之 欢迎 界面编写
- Java俄罗斯方块源代码(swing界面)
- Java Swing界面编程(23)---事件处理:编写用户验证登录用例
- 欢迎界面
- 欢迎界面
- 欢迎界面
- Flex Builder cannot locate the required debugger version of Flash Player
- 具体网络各层的安全协议
- 哈希码
- 正尝试安装的adobe(R)flash(r)player 版本不是最新版本
- SelectDirectory example
- Swing 编写欢迎界面(引)
- C#操作 RAR
- 2010.03.02
- JavaScript中的正则替换
- JSP环境搭建之JDK的安装与Tomcat配置
- VclZip使用
- 使用mapview导shp数据到oracle spatial
- mysql创建数据库sql实例
- 选择排序与冒泡法排序的C代码实现