applet简介
applet是一种特殊的JAVA程序,允许带有Java技术的浏览器能够从Internet下载它并运行。applet是典型的嵌入到网页里面并在浏览器上下文中运行的。applet必须是java.applet.Applet类的子类,java.applet.Applet提供applet和浏览器环境之间的接口标准。
Swing提供一个特殊的applet子类,叫做javax.swing.JApplet,当所有的applet要用到Swing部件来构造他们的GUI时,那么它就需要用到它。 如果applet已经加载到一个网页中,那么通过调用applet的某一方法,浏览器可以控制applet的生命周期。
Applet的生命周期
在Applet类的每个实例中有四个方法
init:这个往往用来执行你的applet需要做的所有初始化工作,当在applet标记中的param属性读入后开始调用。
start:此方法在init方法调用完后自动调用,它是执行访问其它页面后用户重新返回到包含applet的页面中时的操作。
stop:此方法当用户从包含applet的页面中离开时自动调用,你能够用此方法来停止你的动画。
destroy:此方法仅当正常地关闭浏览器时被调用。
因此,applet仅能用init一次,能够在它的生命中被start和stop一次或多次,同时也仅能被destroy一次。/*
* Java(TM) SE 6 Version
*/
import java.applet.Applet;
import java.awt.Graphics;
//No need to extend JApplet, since we don't add any components;
//we just paint.
public class Simple extends Applet {
StringBuffer buffer;
public void init() {
buffer = new StringBuffer();
addItem("initializing ");
}
public void start() {
addItem("starting ");
}
public void stop() {
addItem("stopping ");
}
public void destroy() {
addItem("preparing for unloading");
}
private void addItem(String newWord) {
System.out.println(newWord);
buffer.append(newWord);
repaint();
}
public void paint(Graphics g) {
//Draw a Rectangle around the applet's display area.
g.drawRect(0, 0, getWidth() - 1, getHeight() - 1);
//Draw the current string inside the rectangle.
g.drawString(buffer.toString(), 5, 15);
}
}