资源描述
,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第,10,章,Java,小应用程序,Applet,Applet,程序又称为小应用程序,它嵌入到,HTML,文件中,由支持,Java,的网页浏览器下载并运行。,Applet,程序离不开使用它的,HTML,文件,,HTML,文件中关于,Applet,的信息至少应包含以下三点:,1)字节码文件名(告诉浏览器装入那个小应用程序),2)字节码文件的地址(存放小应用程序的位置),3)在网页上显示,Applet,的方式(小应用程序显示在网页的什么位置),Applet,所有小应用程序的根源,Location:,http:/someLocation/file.html,Loading.,4.Browser,run applet,2.Browser loads,HTML document,http:/someLocation/file.html,1.Browser loads URL,Applet class,3.Browser loads,applet classes,第,10,章,Java,小应用程序,Applet,第一节,Applet,程序开发步骤,第二节,小应用程序,HTML,标记,第三节,Applet,类,第四节,Applet,运行状态控制基本方法,第五节,Applet,的应用,第六节,Applet,的事件及其处理,第七节,Applet,的安全基础,习题,Applet,程序开发主要步骤如下:,1,)建立,Java Applet,源程序(如:,JavaWorld,.java,)。,2,),把,Applet,的源程序转换为字节码文件。,3,)编制使用,JavaWorld,.class,的,HTML,文件。,10.1,Applet,程序开发步骤,例10.1 建立,JavaWorld,.java,文件,内容如下:,import,java.,awt,.*;,import,java.applet.*;,public class,JavaWorld,extends,Applet,public void,paint(Graphics g),g.,drawString,(,Java World!,5,25);,10.1.1 编辑,Applet,的,java,源文件,编译,JavaWorld,.java,产生可以运行的字节码文件,10.,1.3,创建,HTML,文件,为运行,JavaWorld,.class,需要创建包含字节码文件的网页,HTML,的文件的标志格式如下所示:,10.1.2编译,Applet,10.1.3创建,HTML,文件,JavaWorld,!Applet,运行结果,由于,Applet,从远程服务器上下载而在本地机上运行的特殊性,安全问题显得十分重要,为此,,Applet,在运行时要受到更多的限制,诸如:,1),Applet,永远无法运行本地机上的可执行程序;,2),Applet,除了与所在的服务器联系以外,无法再同任何其他的 服务器取得联系;,3),Applet,无法对本地机上的文件系统进行读写操作;,4),Applet,无法获得除了本地机使用的,Java,版本号、操作系统名称及版本号、文件名分隔符(,/,或,)和路径以外有关本地机的其他信息。,Applet,也无法获得使用者的名字和,E-mail,地址等。,10.2,Applet,的安全基础,Applet,类是所有,Applet,应用的基类,所有的,Java,小应用程序都必须继承该类。如下例所示。,import,java.applet.*;,public class,TestApplet,extends,Applet,Applet,类的构造方法只有一种,也就是:,public,Applet(),10.3,Applet,类,Applet,Object,Componet,Container,Window,Panel,Frame,Applet,public void init(),执行初始化操作,public void start(),启动小程序的执行,public void stop(),停止小程序的执行,public void destroy(),释放小程序占有的资源,public,boolean,isActive,(),判断一个,Applet,是否处于活动状态,public,URL,getDocumentBase,(),包含,html,的,位置,public,URL,getCodeBase,(),获取该,Applet,代码的,URL,地址,public,String,getParameter,(String name),获取该,Applet,指定参数的值,public,AppletContext getAppletContext,(),返回浏览器或小应用程序观察器,10.3,Applet,类,public void,resize(,int,width,int,height),调整,Applet,运行的窗口尺寸,public void,resize(Dimension d),调整,Applet,运行的窗口尺寸,public void,showStatus,(String,msg,),在浏览器的状态条中显示指定的信息,public,Image,getImage,(URL,url,),按,url,指定的地址装入图象,public,Image,getImage,(URL,url,String name),按,url,指定的地址和文件名加载图像,public,AudioClip getAudioClip,(URL,url,),按,url,指定的地址获取声音文件,public,AudioClip getAudioClip,(URL,url,String name),按,url,指定的地址和文件名获取声音,10.3,Applet,类,public,String,getAppletInfo,(),返回,Applet,应用有关的作者、版本和版权方面的信息,public,String,getParameterInfo,(),返回描述,Applet,参数的字符串数组,该数组通常包含三个字符串:参数名、该参数所需值的类型和该参数的说明,public void,play(URL,url,),加载并播放一个,url,指定的音频剪辑,10.3,Applet,类,Applet,类中有四种基本方法用来控制运行状态:,init()、start()、stop()、destroy(),10.4,Applet,运行状态控制基本方法,init,start,stop,destroy,离开,web,页面,重新装入或改变页面大小或返回,Web,页面,10.5.2,利用,Applet,来显示图像,10.5.3,利用,Applet,播放声音,10.5.4,Applet,之间进行通信,10.5,Applet,的应用,Applet/TITLE,HTML,定义的语法标志中提供了对嵌入,Applet,的支持。下面介绍几种主要的标志。,1.,CODE,标志,例10.2,CODE,标志说明,Applet,应用的,class,文件名,10.5.1,HTML,中,与,Applet,相关,的,标志(标记),Applet,CODEBASE,标志指定,Applet,的,URL,地址。如下的语句把, 不支持,Applet,的浏览器显示,ALT,标志指明的信息。,3.,ALT,标志,ALIGN,标志可用来,控制把,Applet,窗口显示在,HTML,文档窗口的什么位置,。,align:left,right,bottom,top,texttop,middle,absmiddle,baseline,absbottom,4.,ALIGN,标志,TestApplet,VSPACE,和,HSPACE,标志指定浏览器显示在,Applet,窗口周围的水平和竖直空白条的尺寸,单位为像素。,5.,VSPACE,与,HSPACE,标志,TITLE,TestApplet,NAME,标志把指定的名字赋予,Applet,的当前实例。,6.,NAME,标志,TITLE,TestApplet,PARAM,标志可用来在,HTML,文件里指定参数,格式可如下:,PARAM Name=,name,Value=,Liter,例7.8,HTML,语句使用,PARAM,标志指定两个参数,7.,PARAM,标志,TestApplet,Applet,可调用,getParameter,方法获取,HTML,文件里设置的参数值。例如,要得到用户名和年龄,可用如下语句:,String Name=,getParameter,(,name,);,int,age=Integer.,parseInt,(,getParameter,(,age,),7.,PARAM,标志,在,Applet,内使用图像文件时需定义,Image,对象。,Java Applet,使用的是,GIF,或,JPEG,格式的图像文件。,1用,getImage,方法把图像文件和,Image,对象联系起来。,2,Graphics,类的,drawImage,方法用来显示,Image,对象。,10.5.2,利用,Applet,来显示图像,Java,把图像也当做,Image,对象处理,所以装载图像时需首先定义,Image,对象,格式如下所示:,Image picture;,然后用,getImage,方法把,Image,对象和图像文件联系起来:,picture=,getImage,(,getCodeBase,(),“,ImageFileName,.GIF,”,);,1.,装载一幅图像,在有些情况下,可能需要在发生某事件时伴之以声音,尢其是在,Applet,中装载图像的同时播放声音,这样将大大地丰富,Applet,的内容。协调使用图像的声音是十分重要的。,程序员利用,Java,能够把文本、图像、动画和声音集成在一起,编制出多媒体,Applet。,10.5.3 利用,Applet,播放声音,10.6,Applet,的事件及其处理,事件处理程序:,每次产生,都被传送给,handleEvent,过程,当用户在某组件中击键时,,处理该击键的事件首先捕获该事件,如果该组件不处理该事件,那么,该事件就被传给父组件。,编写自己的,handleEvent,方法,记住该过程有三种可能的出口,return true;,事件被处理-不传播,return false;,事件不被处理-传给窗口层的父组件(不要这样做),return super.,handleEvent,(Event,ev,)-,不处理,传给继承层的父组件,如果动作,鼠标,或焦点事件在,handleEvent,(),过程中没有处理,,就传递给方便函数来处理,action;,mouseEnter,;,mouseExit,;,mouseMove,;,mouseUp,;,mouseDown,;,mouseDrag,;,keyDown,;,keyUp,;,LostFocuse,(),1以在屏幕上显示,“,您好!,”,为例,简述,Java,小应用程序,Applet,的开发的步骤。,2浏览器采取哪些办法,保证,Appelt,安全运行。,3,4.,实现一个,Applet,使其可以从服务器下载音乐播放。,实现一个,Applet,使其可以不停地运行一个动画。,实现一个,Applet,使其可以用三个按钮控制:,(1)从服务器下载音乐播放;,(2)不停地运行一个动画;,(3)使上述动画和音乐协调播放。,习题,
展开阅读全文