Java实用课件第13章JavaApplet(ppt文档).ppt
《Java实用课件第13章JavaApplet(ppt文档).ppt》由会员分享,可在线阅读,更多相关《Java实用课件第13章JavaApplet(ppt文档).ppt(20页珍藏版)》请在咨信网上搜索。
第第13章章 Java Applet 本章导读nJava Applet的运行原理n在网页向Java Applet传值n在Java Applet中播放声音n在Java Applet中使用组件n在Java Applet中绘制图形图像n在Java Applet中播放幻灯片nJava Applet 网络聊天室113.1 Java Applet的运行原理 _ 1 Java Applet概述 1Java Applet概述概述 一个Java Applet也是由若干个类组成的,一个Java Applet不再需要main方法,但必须有且只有一个类扩展了Applet类,即它是Applet类的子类,我们把这个类称为这个Java Applet的主类。Java Applet的主类必须是public的。Applet类是java.applet包提供的类,Applet类是Container类的一个间接子类,因此Java Applet的实例是一个容器。Java Applet属于Java嵌入式开发的一种,嵌入式程序的主类的实例化由嵌入该程序的环境平台中JVM负责。这样一来,我们必须向这样的平台提供相应的配置文件,嵌入该程序的环境平台使用配置文件通知平台中的JVM建立主类的对象,并产生相应的一些行为。Applet类有5个常用的方法,它们是init(),start(),stop(),destroy()和和paint(Graphics g)。213.1 Java Applet的运行原理 _ 2 运行原理 2 运行原理运行原理 例例13-1说明Java Applet运行原理,效果如图13.1所示。3(1)网页的编写 编写一个超文本文件,告诉浏览器来运行这个Java Applet。假设Applet主类的名字是Example13_1,下面是一个简单的html文件“like.html”。like.html文件告诉浏览器运行主类是Example13_1的Java Applet。网页的最终目的是让其他客户通过网络来访问,下载到客户端执行。可以用Web发布管理器,比如,IIS或Tomcat,将含有Java Applet网页所在的目录设成Web服务目录。例如,我们将like.html所在的文件夹D:ch13设为Web服务目录,虚拟目录名称是hello,那么其他用户就可以在其浏览器的地址栏中键入该服务器的IP地址、虚 拟 目 录 名 称 访 问 含 有 Java Applet的 网 页,如http:/192.168.0.100/hello/like.htmlhttp:/192.168.0.100/hello/like.html。Java Applet的字节码文件会下载到客户端,由客户端的浏览器负责运行。超文本文件like.html可以被看成是运行环境执行Java Applet所要求的配置文件。4(2)Java Applet的生命周期 一个Java Applet的执行过程称为这个Java Applet的生命周期。一个Java Applet的生命周期会涉及如下方法的调用执行init()init(),start()start(),stop()stop(),destroydestroy()()和和paint(Graphics g)paint(Graphics g)。当浏览器执行like.html,发现有applet标记时,浏览器内置的JVM将创建主类Example13_1的一个对象,它的大小由超文本文件like.html中的width和height来确定。由于Applet类也是Container的间接子类,因此主类的实例也是一个容器,容器有相应的坐标系统,单位是像素,原点是容器的左上角。该容器的默认布局是FlowLayout布局,被自动添加到浏览器的桌面上。浏览器内置的JVM创建了主类Boy对象后,立刻通知这个对象调用init()方法完成必要的初始化工作。该对象接着自动调用start()方法。当浏览器离开Java Applet所在的页面转到其他页面时,主类创建的对象将调用stop()方法。当浏览器结束浏览时,主类创建的对象自动执行destroy()方法,结束Java Applet 的生命。paint(Graphics g)方法可以使一个Java Applet在容器上显示某些信息,如文字、色彩、背景或图像等。浏览器的Java运行环境产生一个Graphics类的实例,并传递给方法paint中的参数g。513.1 Java Applet的运行原理 _ 3关于repaint()方法和update(Graphics g)3关于关于repaint()方法方法update(Graphics g)repaint()方法和update(Graphics g)是Component类中的一个方法。当调用repaint()方法时,程序首先清除paint()方法以前所画的内容,然后再调用paint()方法。实 际 上,当 我 们 调 用 repaint()方 法 时,程 序 自 动 去 调 用update(Graphics g)方法,浏览器的Java运行环境产生一个Graphics类的实例,传递给方法update(Graphics g)中的参数g。这个方法的功能是清除paint()方法以前所画的内容,然后再调用paint()方法。因此,我们可以在子类中重写update()方法(即隐藏父类的方法),根据需要来清除哪些部分或保留哪些部分。例13-2在paint()方法中使用了repaint()方法,因此每当Java Applet调用paint()方法时,就会调用update()方法。程序重写了update()方法,清除paint()方法所绘制的部分内容,并紧接着再调用paint()方法。613.2 Java Applet中播放声音 用Java可以编写播放AU、AIFF、WAV、MIDI、RM格式的音频。AU格式是Java早期惟一支持的音频格式。要在Java Applet中播放声音,可以使用Applet类的一个静态的方法(类方法):newAudioClipnewAudioClip(URL(URL url url,String name),String name)或Applet类的实例方法getAudioClipgetAudioClip(Url urlUrl url,String name),String name)根据参数url提供的地址和该处的声音文件name,可以获得一个用于播放的音频对象(AudioClip类型对象)。这个音频对象可以使用下列方法来处理声音文件:play()播放声音文件name。loop()循环播放name。stop()停止播放name。例例13-3 播放声音。713.3 在网页向Java Applet传值 我们可以在超文本中使用若干个标志把值传递到Java Applet中,这样就实现了动态地向程序传递信息,不必重新编译程序,便于程序的维护和使用。例例13-4 在网页向Java Applet传值。813.4 在Java Applet中使用组件 Applet类是容器的间接子类,因此我们可以在这个容器中添加组件,处理组件事件,完成一些工作。如果没有更新浏览器内置的JVM,Java Applet中只能使用JDK 1.1版本公布的java.awt包中的组件,如Button,TextField,TextArea等。例例13-5中中,我们把Java Applet的布局设置为BorderLayout布局,效果如图13.2所示。Java Applet的中心和北面又分别嵌套了面板(Panel创建的对象)centerPanel和northPanel。centerPanel面板的布局是CardLayout布局、northPanel的布局是默认的FlowLayout布局。在northPanel中添加了两个按钮,centerPanel面板中又嵌套了两个不同的容器,作为centerPanel 中的“卡片”,单击相应的按钮时,centerPanel面板将显示相应的“卡片”,两张卡片分别负责计算圆和三角形的面积。例例13-6(效果如图13.3所示)在JApplet的内容面板的中心添加了JTree组件,该组件用来显示日历。网页将年份传值给Japplet,在内容面板的北面添加了两个按钮,两个按钮分别负责向前和向后翻动月份;在内容面板的南面添加了1个标签,用来显示月份和年份。该例子中用到了Calendar类的许多属性和功能。9例13-5,13-6 运行效果 图13.2,13.31013.5 在Java Applet中绘制图形 _1 1绘制文本绘制文本drawstring()方法可以在屏幕上显示串对象。drawString(String s,int x,int y)方法从参数x、y指定的坐标位置处,从左向右绘制参数s指定的字符串。drawChars(char data,int offset,int length,int x,int y)方法绘制data数组中的部分字符,length指定数组中要连续绘制的字符的个数,offset是首字符在数组中的位置。2绘制直线绘制直线drawLine(int x1,int y1,int x2,int y2)方法绘制从起点(x1,y1)到终点(x2,y2)的直线段。3绘制矩形绘制矩形drawRect(int x,int y,int w,int h)方法绘制矩形,fillRect(int x,int y,int w,int h)方法填充矩形。矩形的左上角的坐标由参数x和y指定,矩形的宽和高由参数w和h指定。4绘制圆角矩形绘制圆角矩形drawRoundRect(int x,int y,int w,int h,int arcW,int arcH)方法绘制圆角矩形,fillRoundRect(int x,int y,int w,int h,int arcW,int arcH)方法填充圆角矩形。参数arcW和arcH指定圆角的尺寸,见图图13.4中的中的4个黑角部分。11图13.41213.5 在Java Applet中绘制图形_2 6绘制圆弧绘制圆弧 圆弧就是某个椭圆的一部分。drawArc(int x,int y,int width,int height,int starAngle,int arcAngle)方法绘制圆弧。fillArc(int x,int y,int width,int height,int starAngle,int arcAngle)方法填充圆弧。x、y、width、heigth指定椭圆的位置和大小,参数starAngle和 arcAngle的单位都是“度”。而起始角度的0是3点钟的方位。参数starAngle和arcAngle表示从starAngle的角度开始逆时针或顺时针方向画arcAngle度的弧,当arcAngle是正值时为逆时针,否则为顺时针。starAngle的值可以是负值,如-90是6点钟的方位。7绘制多边形绘制多边形drawPolygon(int xPoints,int yPoints,int nPoints)方法绘制多边形。fillPolygon(int xPoints,int yPoints,int nPoints)方法填充多边形。参数数组xPoint和yPoint组成多边形的顶点坐标,nPoints是顶点的数目。注:注:Java自动闭合多边形,程序总是把最后的顶点和第一个顶点连接起来。例例13-7绘制了一些基本图形,效果如图如图13.5所所示。13例例13-7机制机制运行效果图13.51413.6 在Java Applet中绘制图像 图像是矩形内的一组像素。Java支持主要两种图像格式GIF(Graphics Interchang Format)和JPEG(Join Phtographic Expert Group)。public Image getImage(URL url,String name)Applet类提供的方法,返回可以被显示在屏幕上的Image对象的引用。public URL getCodeBase()从Applet继承的方。该方法返回一个URL对象。public URL getDocumentBase()该方法返回一个URL对象,public boolean drawImage(Image img,int x,int y,ImageObserver observer)Graphics类提供。如public void paint(Graphics g)g.drawImage(img,0,3,this);public boolean drawImage(Image img,int x,int y,int width,int height,ImageObserver observer)。该方法在矩形内绘制加载的图像。如果不想让图像有比例上的变化,在绘制之前可以通过Image类提供的方法获取被加载的图像的宽和高,如img.getHeight(this);img.getWidth(this);例例13-8绘制了两幅图像,效果如图13.6所示。15例例13-8运行效果图13.61613.7 在Java Applet 播放幻灯片 HTML也可以将图片贴到网页上去,但在HTML中播放幻灯片确实是一件不现实的事情,因为为了看幻灯片必须在多个网页间切换,这是件痛苦的事情。在下面这个Java Applet中,用户只需单击“next”按钮和“previous”按钮就可以前后变换幻灯片。例例13-9 在HTML中播放幻灯片。1713.8 Java Applet网络聊天室 虽然Java Applet的字节码驻留在服务器端,但它需要下载到客户端的浏览器来运行,因此Java Applet是客户端程序。Java Applet与应用程序的一个不同之处是Java Applet只能和它所驻留的服务器建立套接字连接。Applet有一个方法public URL getDocumentBase(),该方法返回一个嵌入Java Applet的网页的URL对象,该URL对象再调用public String getHost()方法可以获取其中含有的IP地址。例例13-10实现了一个网络公共聊天室,效果如如图图13.7所所示。一个用户使用自己浏览器中的Java Applet输入字符串并发送给服务器,服务器把该字符串返回给所有的用户的浏览器中的Java Applet。18例例13-10 运行效果图13.71920- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 实用 课件 13 JavaApplet ppt 文档
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文