JavaApplet内嵌网页运行初探

JavaApplet内嵌网页运行初探

□许茆堂

Applet程序的特色:具有完整的网络运行能力。内嵌在网页中运行。支持图形界面和事件处理。支持多线程设计。applet支持的类是java.applet.Applet。并继承Java.awt.Panel类而来。applet最大的不同之处是没有main()方法。当嵌入applet程序的网页被加载时,applet程序也会一起加载,此时构造方法将会最先被运行,接着是运行init()方法,init()方法被用来进行一些初始化工作。start(),paint()和stop()这3个方法的运行是循环式的,当运行applet程序的窗口获得焦点时,start()方法会自动地被调用,相对的stop()方法会在运行窗口失去焦点时被调用,而paint()方法则可用来绘制applet程序。applet标记语法:<APPLETCODEBASE=路径CODE=class文件名width=宽度height=高度><PARAMNAME="参数名称"VALUE="参数值">……<applet>

要掌握applet程序的运行结构:参考如下:

importjava.applet.*;

publicclassMyAppletextendsApplet

{publicMyApplet(){//构造方法}

publicvoidinit(){//初始方法}

publicvoidstart(){//开始运行}

publicvoidstop(){//停止运行}

publicvoiddestroy(){//结束运行}}

applet程序继承Applet类,默认布局为FlowLayoout;如果继承JAppet类,则默认布局为BorderLayout。

例:Applet窗口程序-简易留言板:

importjava.awt.*;

importjava.util.*;

importjava.awt.event.*;

importjava.applet.Applet;

publicclassexp1extendsApplet//继承Applet类{

intcount=1;//信息计数变量

Labell=newLabel("输入留言:");//创建标签组件

Buttonb1=newButton("留言");

Buttonb2=newButton("清除");

TextAreata=newTextArea(10,25);//创建文本区组件

TextFieldtf=newTextField("请在此输入^_^,15);

publicvoidinit()//复位init()方法

{tf.selectAll();//选取单行文本区组件的字符串

ta.setEditable(false);//设置文本区组件为只读

//为b1,b2按钮组件加入事件处理方法

b1.addMouseListener(newb1_Listener());

b2.addMouseListener(newb2_Listener());

add(l);//加入标签

add(tf);

add(b1);

add(b2);

add(ta);}

//b1按钮的事件处理方法类,此为一自定义内隐类

classb1_ListenerextendsMouseAdapter{

publicvoidmouseClicked(MouseEvente)

{//创建日历对象,此对象在java.util包中

Calendarc=Calendar.getInstance();

Stringyea=Integer.toString(c.get(Calendar.YEAR));

Stringmon=Integer.toString(c.get(Calendar.MONTH)+1);

Stringday=Integer.toString(c.get(Calendar.DAY_OF_MONTH));

if(tf.getText().equals(""))return;//不加入空字符串信息

else//加入信息到文本区中{

ta.append(yea+"年"+mon+"月"+day+"日");

ta.append(c.get(Calendar.HOUR_OF_DAY)+":"+c.get(Calendar.MINUTE)+"\n");

ta.append("信息"+(count++)+"==>"+tf.getText()+"\n\n");

tf.setText("");

}}}

//b2按钮的事件处理方法类,此为一自定义内隐类

classb2_ListenerextendsMouseAdapter

{publicvoidmouseClicked(MouseEvente)

{tf.setText("");//清除单行文本区}}}

通过此程序可看到在applet程序中也是可以使用图形组件或事件处理等窗口程序机制的(包括多线程)。

下面是applet.html文件的内容:

<html>

<head>

<title>Applet测试</title>

</head>

<body>

<appletcode="exp1.class"width=230height=250></applet>

</body>

</html>

作者单位:江苏省连云港市海州区环境卫生管理处

标签:;  ;  ;  

JavaApplet内嵌网页运行初探
下载Doc文档

猜你喜欢