您的位置:首页 > 编程语言 > Java开发

java splash screen特效

2011-03-25 11:53 357 查看
import java.awt.AlphaComposite;

import java.awt.Color;

import java.awt.Font;

import java.awt.Graphics2D;

import java.awt.SplashScreen;

/**

* 应用程序启动的初始化窗口

* @author tfq

*

*/

public class ViewSplashScreen extends Thread{

public void run(){

try{

//通过SplashScreen.getSplashScreen(),获取SplashScreen对象

SplashScreen splash =SplashScreen.getSplashScreen();

//通过splash.createGraphics()画图对象;

Graphics2D g =splash.createGraphics();

//设置启动图片字体的颜色

g.setColor(Color.green);

//SplashScreen在屏幕的位置,大小

//g.drawString(splash.getBounds().toString(),10,30);

//在第一张启动图片上写"视房宝"

g.drawString("视房宝",10,50);

//SplashScreen的大小,当前显示的图片

//g.drawString(splash.getImageURL().toString(),10,70);

//刷新以上内容到屏幕

splash.update();

Thread.sleep(1000);

//下面的代码是在SplashScreen上显示一个3D效果的字符串

g.setComposite(AlphaComposite.Clear);

//1 以矩形填充画图区域

g.fillRect(0,0,(int)splash.getSize().getWidth(),(int)splash.getSize().getHeight());

//更改显示的图片

splash.setImageURL(Main.class.getResource("/SplashTest/beauty.jpg"));

int x =30, y=100;

String author ="tfq";

g.setFont(new Font("TimesRoman", Font.PLAIN, 30));

g.setPaintMode(); //3

for(int i=0;i<5;i++){

g.setColor(new Color(200, 200, 0));

g.drawString(author, x+i, y+i-1);

g.setColor(new Color(100, 100, 0));

g.drawString(author, x+i-1, y+i);

}

g.setColor(Color.yellow);

g.drawString(author, x+5, y+5);

splash.update();

//注意,这儿是sleep(10000),但实际上SplashScreen并没有显示10秒

Thread.sleep(10000);

}catch(Exception e){

e.printStackTrace();

}

}

}

public class Main{
public static void main(String[] args){
new ViewSplashScreen().start();

try{
//这儿决定SplashScreen显示时间长短.
Thread.sleep(3000);
}catch(Exception e){}

//对于实际应用程序,这儿对应程序的初始化工作
JFrame frame =new JFrame("Java SE6 Splash Test");
frame.setPreferredSize(new Dimension(320,240));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
}

以上代码不能直接运行,不然没有效果,要打成jar包才能运行出效果来。

在eclipse3.1中把项目做成jar包步骤:
打包前的工作。
在项目下创建一个文件夹,名为META-INF,再在其下创建文件MANIFEST.MF
编辑的内容如下:
Manifest-Version: 1.0
Author: Eastsun
Created-By: 1.6.0-beta2
(Sun Microsystems Inc.)
SplashScreen-Image: SplashTest/splash.jpg
///需要加载的图片
Main-Class: SplashTest.Main ///主要运行的类

具体打成jar包的方法,在网上搜下,非常之多。

此项目示例工程我已经上传于本网站,其中操作步骤非常的详细,如果有需求者,可在本网站搜索下: java splash Screen 关键字即可打到
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: