用户登陆|用户注册|建站服务|广告合作
您现在的位置: 首页 >> 建站实务 >> 网络编程 >> JSP篇 >> 正文
站内搜索:
Java Script与Java Applet综合运用(三)
[作者:dxaw|来源:赛迪网技术社区|时间:2007-06-15| 收藏 投稿 ]【

这次我们来谈一谈Java Applet之间的互相调用,这里所说的Java Applet是指同页之间的Java Applet。由于这里涉及到Java Applet编程的细节,可能具有一些难度。如果你有过Java的编程经验,你会发现这很容易,并能很快掌握;若你是Java新手,也不要产生畏难心理,你需要一些介绍Java编程的书籍,最重要的是实践,慢慢你就会掌握Java编程技巧的;当然如果你是Java高手,嘿嘿!请教教我如何进行Java编程吧。好了,Let"s go!

我们这次也用举例的方式来介绍Java Applet之间的调用。仍旧用HelloWorld1 (HelloWorld最容易掌握,不是吗?)作为例子。

HelloWorld1.java

import java.awt.*; 
import java.applet.*; 
public class HelloWorld1 extends Applet 
{ 
public String text="Hello World!";//请注意此处的public 
public void paint(Graphics g) 
{g.drawString(text,20,20);} 
}

还是最初的那个HelloWorld1,丝毫没有改变。

SetText.java

import java.awt.*; 
import java.applet.*; 
import java.awt.Event; 
public class SetText extends Applet 
{ 
String newtext="世界你好!"; 
public void paint(Graphics g) 
{g.drawString(newtext,20,20);
} 
//添加了对鼠标的处理函数 
public boolean mouseDown(Event evt,int x,int y) 
{String temp; 
Applet hello=getAppletContext().getApplet("app"); 
temp=((HelloWorld1)hello).text; //将hello定义为HelloWorld1类 
((HelloWorld1)hello).text=newtext; 
((HelloWorld1)hello).repaint(); 
newtext=temp; 
repaint(); 
return true; 
} 
}

为了避免使用Java Script而引起误会,我们在SetText中增加了对鼠标的处理函数;另外我们在编译SetText时,必须先编译HelloWorld1.java,并把编译后的HelloWorld1.class放在指定的目录例如lib;然后运行javac -classpath lib SetText.java,编译后得到SetText.class。

example3.html

<html> 
<head><title>例子</title></head> 
<body> 
Java Script与Java Applet的综合运用例三<br> 
<applet code="HelloWorld1.class" width="100" height="28" name="app"> 
</applet><br><br> 
<applet code="SetText.class" width="100" height="28" > 
</applet><---请点击这里 
<br>如果你的浏览器无法正确显示"世界你好!",请改用Netscape试试。 
</body> 
</html>

用浏览器打开example3.html,会出现两个Applet分别显示"Hello World!"和"世界你好!",点击下方的Applet(SetText.class)你会发现两个Applet中的内容发生了互换(如果你发现"世界你好!"显示不正常,那是你所用浏览器的Java虚拟机对中文支持不够好,我就发现我机子上的IE4.0无法在Applet中显示中文,这是浏览器的bug,我以前还曾发现IE在处理Date时,愣是把时间减少了7个小时,升级到win98之后,才改正此bug)。


Tags:
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
快速注册通道
赛酷网·中国西部第一建站门户
关于我们 | 投稿指南 | 广告服务 | 建站服务 | 联系我们 | 网站地图 | 友情连接 | 诚征英才
地址:中国·昆明盘龙区丽水天锦A栋15楼A06 服务热线:0871-5610002 5732371联系我55693344 联系我80796509
建站交流群:17577271 下载交流群:11885804 22003060 35468519 交流论坛
© CopyRight 2005-2007, Syku.Net, Inc. All Rights Reserved
赛酷网络版权所有 滇ICP备05000398号