大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
第一种。。你的雪花是图片,那么你自己多做几张旋转的图片,在每次飘落的时候,1秒后换取另外一张图片。或者做成gif图片。
成都服务器托管,成都创新互联公司提供包括服务器租用、资阳主机托管、带宽租用、云主机、机柜租用、主机租用托管、CDN网站加速、域名与空间等业务的一体化完整服务。电话咨询:028-86922220
第二种:你的是自己画的雪花,那么你每秒要重新绘制你的雪花。
闪屏 是指面板刷新带来的负面的效果。。
别去应付老师了
看看这不到一百行代码
你会学到很多的
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
HTML
HEAD
TITLE New Document /TITLE
META NAME="Generator" CONTENT="EditPlus"
META NAME="Author" CONTENT=""
META NAME="Keywords" CONTENT=""
META NAME="Description" CONTENT=""
/HEAD
BODY
SCRIPT LANGUAGE="JavaScript"
!--
//--------------------------------------//
//演示函数用法,typeof运算符,for in 用法,数组的内建方法push,pop
function showWindowObj(){
var ary = [];
if(typeof(window) == 'undefined'){
return ;
}
for (var x in window){
ary.push([x ,eval("window." + x)])
}
alert(ary.length);
var record = ary.pop();
ary.push(record);
return ary;
}
alert(showWindowObj().length);
//--------------------------------------//
//演示闭包,for 循环;
(function (){
var arg = [];
for (var i = 0 , j = arguments.length ; i j ; i++){
arg.push(arguments[i]);
}
alert(arg.join(","));
})('string1','string2');
//--------------------------------------//
//演示原型方法的创建,正则表达式;
String.prototype.trim = function (){
return this.replace( /^\s+|\s+$/g, "" );
}
var str = " a string " , str_trimd;
str_trimd = str.trim();
alert("length of +" + str + " : " + str.length);
alert("length of +" + str_trimd + " : " + str_trimd.length);
//--------------------------------------//
// 演示模拟类的实现,
function Person(name,gender){
this.name = name;
this.gender = gender;
//实例方法
this.sayHello = function (){
alert("hello");
}
}
//类静态方法
Person.prototype = {
showName : function (){
alert(this.name);
}
,showGender : function (){
alert(this.gender);
}
}
var me = new Person ('myname','male');
me.sayHello();
me.showName();
me.showGender();
//--
/SCRIPT
/BODY
/HTML
/*
*实现在窗体上随机布满300个雪花("*"),滚动
*在上次的课基础上增加了for循环(一次要产生300个变量),随机数,数组 ;
*下面的序号为步骤
*/ import java.awt.* ; //(3)导入awt包
public class Star {
public static void main(String args[]) {
Frame w = new Frame() ; //(1)绘制窗体
w.setSize(1024,768) ; //(4)把窗体布满全屏
w.setBackground(Color.BLACK) ; //(5)背景为黑颜色
MyPanel mp = new MyPanel() ; //(7)把MyPanel对象mp,添加到窗体w上
w.add(mp) ;
Thread t = new Thread(mp) ;
t.start() ; //(12)启动线程
w.show(); //(2)显示窗体
}
}
//(6)继承Panel类
class MyPanel extends Panel implements Runnable { //(11)实现Runnable接口
int x[] = new int[300] ;
int y[] = new int[300] ; //(8)定义300个数组变量 MyPanel(){
for(int i = 0;i 300; i++) {
x[i] = (int)(Math.random()*1024) ;
y[i] = (int)(Math.random()*768) ; //(9)当程序走到第6步的时候程序就会调用构成函数
} //由于随机数是从0-1之间的数任意产出所以x乘以1024,y乘以768再转换为int类型
}
public void paint(Graphics g) {
for(int i = 0;i 300; i++) {
g.setColor(Color.WHITE) ;
g.drawString("*",x[i],y[i]) ;
//g.drawString("*",30,30) ;(7)绘制一个星星在屏幕的x=30,y=30的位置上
} //(10)绘制300个雪花,把坐标30,30,改成x[i],y[i] ;
} //做到这步可以实现在黑色的天空布满300个星星
public void run() {
while(true) { //(13)实现产生300个雪花往下落死循环
for(int i = 0 ; i 300; i++) {
y[i]++ ; //(14)y坐标不断的+1
if(y[i] 768){ //(18)如果y轴坐标大于768时,则y = 0,回到窗体的顶部
y[i] = 0 ;
}
}
try{ //(16)用try,catch解决线程休眠的异常
Thread.sleep(20) ; //(15)在每次y轴坐标+1后线程休眠20毫秒
}catch(Exception e) {}
repaint() ; //(17)雪花在新的位置重画
}
}
}
用java代码模拟一张图片可以这样操作:1.创建BufferedImage类
2.根据BufferedImage类得到一个Graphics2D对象
3.根据Graphics2D对象进行逻辑操作
4.处理绘图
5.将绘制好的图片写入到图片