Java Script与Java Applet的综合运用(三)
2008-01-05 09:18:20 来源:WEB开发网核心提示:这次我们来谈一谈java Applet之间的互相调用,这里所说的Java Applet是指同页之间的Java Applet,Java Script与Java Applet的综合运用(三),由于这里涉及到Java Applet编程的细节,可能具有一些难度,愣是把时间减少了7个小时,升级到win98之后,假如你有过Java
这次我们来谈一谈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)。
[]
更多精彩
赞助商链接