Java Applet 实现一个半径不断增大的彩色小球动画
作为Applet程序的一个入门,我们今天探讨一下如何实现一个半径不断增大的小球动画,正如下图所示。
设计的关键思想:
我们需要设定一个小球的圆心坐标,最好是在窗口的中央,然后令小球的半径不断增大,不断的重绘,以实现小球的增大动画。
设计方案:
我们要绘制小球,就用到了一个Graphics类,Graphics类有绘制的功能。
然后再设计一个线程专门用来控制动画的播放,我们重载run()方法,在其中实现小球半径的增加,以及调用窗体的重绘函数,每隔一定时间重绘窗体。
接下来实现paint(Graphics g)函数,来绘制一个彩色圆球,这个函数中要做的就很简单了,用特定的颜色覆盖一个一定大小的圆形区域
下面就是源代码
import java.awt.*;
import java.applet.Applet;
import javax.swing.JApplet;
public class Circle extends JApplet implements Runnable{
int x;//圆心x坐标 为x-r/2
int y;//圆心y坐标 为y-r/2
int r;//半径
private Image img;
private Graphics graph;
public void init(){
Dimension de = this.getSize();
x = de.height/2;
y = de.width/2;
r = 1;
};
public void start(){
//定义一个线程
Dimension de = this.getSize();
x = de.height/2;
y = de.width/2;
r = 1;
Thread animation = new Thread(this);
animation.start();
}
public void stop(){
}
public void destroy(){
}
public void run(){
Dimension de1 = this.getSize();
while(true){
r += 1;
if(r>(de1.height/2)||r>(de1.width/2)){
r = 1;;
}
repaint();
try
{
// 暂停线程30毫秒
Thread.sleep (30);
}
catch (InterruptedException ex)
{
}
}
}
public void paint (Graphics g) {
//设置球的颜色
g.setColor (Color.PINK);
// 从x-r/2,y-r/2位置处画一个实心的圆
g.fillOval(x-r/2,y-r/2,r,r);
}
//双缓冲机制
public void update (Graphics g)
{
// 初始化buffer
if (img == nul
相关文档:
XJad2.2(Java源代码反编译工具)
立即下载
XJad是基于Jad核心的Java源程序反编译软件,内置Jad1.5.8e2。
XJad可处理多个*.class文件,可以处理文件夹内的所有文件,甚至可以处理*.jar文件。
XJad带有多页面文本编辑器,反编译完成后可以直接编辑查看,编辑器支持java语法的高亮显示功能。
......
JXL.JAR 操作Excel文件开源包
这里简单讲些项目中用到的一些方法!(项目的环境是Struts2 hibernate3 resin3 )
// Excel文件存放路径
String path = ServletActionContext.getServletContext().getRealPath("")+"userfiles\\train_excel\\text.xls";
// 生成Excel文件
WritableWorkbook wwb = Workbook.creat ......
java(Web)中相对路径,绝对路径问题总结
前言:
前一段时间,由于在处理Web应用下的文件创建与移动等,因此涉及到很多关于java
中相对路径,绝对路径等问题。同时,对于Web应用中的相对路径,绝对路径,以及Java.io.File
类学习了一下。也找了一些资料。希望大家遇到类似的问题,可以更有效的解决。
========= ......
一般情况获得本地所有的ip地址:
try {
InetAddress address = InetAddress.getLocalHost();
System.out.println(address.getHostAddress());
String name = address.getHostName();
System.out.println(name);
InetAddress[] addresses = &nbs ......
ajax技术是使页面能局部刷新的一种技术,全称应该是asynchronous JavaScript and xml从几个单词就知道它的请求响应的处理是异步的,而且使用的是JavaScript和xml技术.
我们在java中使用ajax技术最简单的是使用它的一个框架dwr只要导入这个包,做相应的配置,可 ......