JavaScript与JavaApplet综合运用

2016-02-19 17:01 7 1 收藏

给自己一点时间接受自己,爱自己,趁着下午茶的时间来学习图老师推荐的JavaScript与JavaApplet综合运用,过去的都会过去,迎接崭新的开始,释放更美好的自己。

【 tulaoshi.com - 编程语言 】

  在WWW中Java因其灵活性而得到越来越广泛的运用,许多的网页都使用了Java来增加动感和与用户进行交互对话.在WWW中Java Script和Java Applet是运用最多的。Java Script的启动速度快, 编写简单,易于修改,与文档的结合密切,但其功能略嫌简单; 而Java Applet的功能强大, 灵活性好,但编写复杂,无法直接在文档中修改.因此如能将二者结合运用将达到很好的效果.

  下面我给大家举例如何在网页中进行Java Script和Java Applet的综合运用.

  首先我们编写一个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.class(别告诉我程序无法通过!如果编译出错请检查是否拼写有误。)

  example.html

  

html
headtitle例子/title/head
body
script language="JavaScript"
!--
function SetText()
{
document.app.text="世界你好!";
document.app.repaint();//也请注意此句.
}
//--
/script

  Java Script与Java Applet的综合运用例一br

  

applet code="HelloWorld1.class" width="100" height="28" name="app"
/applet
form
input type="button" value="请点击这里" onclick="SetText()"
/form
/body
/html

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  用浏览器打开example.html会出现一个显示Hello World!的Java Applet以及一个按钮请点击这里。我们点一下按钮,你会发现Hello World!变成了世界你好。这说明Java Script已经成功的改变了HelloWorld1中text的内容。

  你也许会问在在HelloWorld1.java中为什么要在text前加public??

  还有Java Script中那行:"document.app.repaint();"是什么意思??

  是这样的:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  和C++一样,在Java中缺省状态下,对象的属性是private,要让Java Script访问到Java Applet中的对象,必须设置为public(包括函数、变量和类)。

  前一句document.app.text="世界你好!"仅改变了text的值,要使它反映在浏览器上,必须要让HelloWorld1刷新它的显示,因此要调用HelloWorld1中的repaint()函数。你也许又要问了:我在HelloWorld1.java中并没有看到repaint()函数呀? HelloWorld1是Applet的子类,我们调用repaint()其实是调用类Applet中的repaint()函数。当然我们并不推荐在外部直接修改Applet内的变量,更安全的方法是提供public函数来读取和改变内部变量。

  上面我们介绍了使用Java Script改变Java Applet中的变量的方法(严格来讲应该是改变了String类,不过可以简单的把String类看成是变量); 我们说直接在Java Script中改变Java Applet中的变量是不可取的(至少是不推荐的)。 因为Java Applet本身并不知道变量被改变, 这会给Applet程序带来隐患(还记得我们不得不调用repaint()函数来刷新显示吗?)。 更为积极的做法是在Java Applet中提供public函数支持对内部对象的存取。下面我们对HelloWorld1.java和example.html进行改进,介绍如何在Java Script中调用Java Applet的函数:

  考虑到浏览器对同名的Java Applet往往使用cache,因此我们把程序命名为HelloWorld2.java

  HelloWorld2.java

  

import java.awt.*;
import java.applet.*;
public class HelloWorld2 extends Applet//主类名必须与文件名相同
{
String text="Hello World!";//去掉text的public属性
public void paint(Graphics g)
{g.drawString(text,20,20);}
//这里增加一个public函数
public void SetString(String NewString)
{
text=NewString;
repaint();//自动调用repaint()函数
}
}

  编译后生成HelloWorld2.class;

  example2.html

  

html
headtitle例子/title/head
body
script language="JavaScript"
!--
function SetText()
{
document.app.SetString("世界你好!");
//这里不再需要repaint()函数了
}
//--
/script
applet code="HelloWorld2.class" width="100" height="28" name="app"
/applet
form
input type="button" value="请点击这里" onclick="SetText()"
/form
/body
/html

  同样打开example2.html点击按钮后你会发现"Hello World!"变成了"世界你好!",说明调用函数成功?

来源:http://www.tulaoshi.com/n/20160219/1613900.html

延伸阅读
标签: Web开发
网上提供的这方面资料太少了,研究一两天,做了个例子,大家可以参考! html head meta http-equiv="Content-Type" content="text/html; charset=gb2312" / titleFlash与3D信息交互/title style type="text/CSS" !-- td {}{     font-family: "宋体";     font-size: 12px; } -- /style /head body onLoad="Ini...
标签: Web开发
小狗收藏贴 转换 仅拼音 排序 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
标签: Web开发
如有纰漏之处,请指出,谢谢 1、普通全局变量 在browser里,引用一个全局变量,可以有很多方法,你可以直接引用该变量,也可以用window.variable来引用全局变量,原因是因为全局变量属于window的窗体,但是当每新开一个窗口,浏览器会自动清空先前已有变量(也就是说,每个新开页面都是一个“有清白之身的web页”,因此在新开的窗口里是不可...
标签: Web开发
牢记:函数式编程不是用函数来编程!!! 23.4函数式编程 23.4.1 什么是函数式编程 什么是函数式编程?如果你这么直白地询问,会发现它竟是一个不太容易解释的概念。许多在程序设计领域有着多年经验的老手,也无法很明白地说清楚函数式编程到底在研究些什么。函数式编程对于熟悉过程式程序设计的程序员来说的确是一个陌生的领域,闭包(cl...
标签: PS PS教程
在学习中遇到问题可以到 论坛 发贴交流! 本例向朋友们介绍运用PS的工具综合运用制作可爱的闪光字,主要学习自定义画笔笔刷、图层混合模式、PS内置滤镜、模糊、液化等工具的综合运用完成最终效果,希望能给朋友们带来帮助~~ 更多精彩特效教程链接:http://www.jcwcn.com/portal-topic-topicid-10.html 原文:http://abduzeedo.com/lost-s...

经验教程

830

收藏

61
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部