电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

同网页之内两个Applet通信


发布日期:2020/5/19
 

程序代码:

Appletjava 源码

import javaawt*;

import javaawtevent*;

import javaapplet*;

public class Applet extends Applet

{

TextField tf = new TextField(Applet你能收到吗?); // 定义文本框

Button b = new Button(发送到Applet); // 发送按钮

public void init()

{

setLayout(new FlowLayout()); // 设置布局管理器为FlowLayout

add(tf);

add(b);

}

public boolean action(Event ev Object obj) // 处理按钮事件

{

if(evtarget instanceof Button) // 如果事件是从按钮来的

{

String msg = tfgetText();

Applet applet = (Applet)getAppletContext()getApplet(Applet);

if(applet != null) // 取Applet的句柄

{

appletAppendText(msg); // 调用applet中的函数

return true;

}

else

{

tfsetText(没有找到Applet);

return false;

}

}

return false;

}

}

=================================================

Appletjava 源码

import javaappletApplet;

import javaawt*;

public class Applet extends Applet

{

TextField text = new TextField();

public void init()

{

setLayout(new FlowLayout());

add(text);

}

public void AppendText(String msg) // <<--- 声明为公开方法以便applet1调用

{

text.setText("我收到了!是\""+msg+"\"");

}

}

说明:Applet类中可以取得网页的上下文句柄,因此,同网页内的两个Applet是可以互相访问到的,在本例中注意Applet2的HTLM代码一定要加上name="Applet2",否则无法取得Applet2得句柄.编译的时候先编译Applet2,这样Applet1中才能引用Applet2这个类.JB下例子通不过,需要在IE中执行.

上一篇:如何控制DataGrid里的内容换行与不换行

下一篇:实用系统的架构主选:可伸缩性和重/轻量