版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序设计任务驱动式教程主编:孙修东、王永红高职高专规划示范教材北京航空航天大学出版社目录任务一搭建环境〔构建Java集成开发环境〕任务二Java欢送你〔开发简单Java应用程序任务三小试牛刀〔学习Java语言根底〕任务四挑战选择〔使用分支控制流程〕任务五游戏人生〔使用循环控制流程〕任务六回归自然〔创立、使用类和对象〕任务七3G时代的消息传递(定义和使用类方法)任务八保护你的隐私〔封装的使用〕任务九子承父业〔继承和多态的使用〕任务十上帝万能之手〔接口的使用〕任务十一用数组存储信息〔使用数组〕任务十二使用字符串进行交流〔使用字符串〕任务十三防患于未然〔捕获并处理异常〕任务十四主动出击〔抛出异常〕任务十五认识JavaApplet〔Applet入门〕任务十六丰富多彩的Applet〔在Applet中播放声音和显示图像〕任务十七进入Windows世界〔设计图形用户界面〕任务十八布局规划〔使用布局管理器〕任务十九事件委托处理〔如何处理事件〕任务二十选择之道〔使用选择控件和选择事件〕目录任务二十一简明清晰的菜单(使用菜单和其他常用事件〕任务二十二访问数据〔使用JDBC连接数据库〕任务二十三访问数据升级〔数据库编程〕任务二十四文件管理〔目录与文件管理〕任务二十五顺序进出之道〔文件的顺序访问〕任务二十六随机进出之道〔文件的随机访问〕任务二十七JAVA的分身术〔创立和启动线程〕任务二十八线程的生命周期与优先级(线程的状态与调度)任务二十九基于连接的通信〔Java中的套接字Socket〕任务三十基于无连接的通信〔Java中的数据报编程〕目录任务十六丰富多彩的Applet
〔在Applet中播放声音和显示图像〕21知识目标能力目标AudioClip类;Image类。会使用AudioClip类在Applet中实现声音的播放;会使用Image类在Applet中显示图像。内容提要4跟我做:会唱歌的图片
1235实现方案
代码分析必备知识
动手做一做
16.1跟我做:会唱歌的图片任务情景编写一个JavaApplet程序AudioImage,运行程序时显示一张图像并循环播放一个声音文件。运行结果第1章目录16.2实现方案
解决步骤步骤一:按照Applet程序的框架编写程序代码。1.翻开Eclipse,在study工程中创立包com.task16,再确定类名AudioImage,得到类的框架。2.使用imports关键字加载其它包:ava.applet.*、java.awt.*和javax.swing.*。3.按照Applet程序框架,在publicclassAudioImage后添加extendsJApple语句4.在下面一行输入定义AudioClip类和Image类的对象。 AudioClipaudio; ImageimgDisplay;5.在AudioImage类中输入两个方法的定义:⑴在int()方法中使用Image类的getImage方法将图像文件和Image对象联系起来,使用getAudioClip方法加载声音文件;⑵在paint()方法中使用Graphics类的drawImage方法显示Image对象,使用AudioClip对象的loop方法循环播放声音文件。步骤二:编写AudioImage.html文件,使用Applet相关标记将Applet程序嵌入到HTML文件中。步骤三:使用AppletViewer工具查看嵌入了Applet程序的HTML文件,或直接用Web翻开HTML文件,运行Applet程序。第1章目录程序代码Applet源文件代码:/**AudioImage.java*任务十六*会唱歌的图片*/importjava.awt.*;importjava.applet.*;importjavax.swing.*;publicclassAudioImageextendsJApplet{
AudioClipaudio;//定义类型为AudioClip的成员变量
ImageimgDisplay;//定义类型为Image的成员变量
publicvoidinit(){
imgDisplay=getImage(getCodeBase(),"1.jpg");//装载图像
audio=getAudioClip(getCodeBase(),"sample.mid"); }
第1章目录16.3代码分析
publicvoidpaint(Graphicsg) { g.drawString("Applet中播放声音和显示图像",30,30);//显示文本
audio.loop(); g.drawImage(imgDisplay,30,40,this);//显示图像
}}嵌入Applet的HTML文件代码:AudioImage.html<appletcode="AudioImage.class"width=200height=180></applet>第1章目录16.3代码分析
应用扩展Applet中播放的声音和显示的图像也可以作为参数由HTML传递。假设用HTML传递声音和图像的文件名参数,上述代码局部修改如下:publicclassAudioImage2extendsJApplet{ privateStringMyI,MyA; AudioClipaudio;//定义类型为AudioClip的成员变量 ImageimgDisplay;//定义类型为Image的成员变量 publicvoidinit() { MyI=getParameter("myImage");MyA=getParameter("myAudio"); imgDisplay=getImage(getCodeBase(),MyI);//装载图像 audio=getAudioClip(getCodeBase(),MyA); } ……〔与“程序代码”一节中paint方法的代码相同〕}16.3代码分析
16.4必备知识
16.4.1Applet中的声音处理Java可以支持的声音文件包括.wav、midi和.mp3,在Applet中处理声音文件可以先载入再播放。使用类中所定义的getAudioClip()方法可以载入一个声音文件,当声音文件被载入后,那么可以使用相关方法对其进行操作,这些方法包括:play(),loop()或者stop()。使用类中的Play()方法可以播放一个己被载入的声音文件;loop()方法可以循环播放一个己被载入的声音文件;stop()方法可以停止播放声音文件。16.4.2Applet中的图像处理目前Java所能处理的图像格式包括GIF和JPEG两种。Java把图像当做Image对象处理,先载入再显示。Applet装载图像时需要首先定义Image对象,格式为:ImagemyImage;再使用getImage方法把图像文件和Image对象联系起来,其方法定义为:myImage=getImage(URLurl);或myImage=getImage(URLurl,Stringname);第1章目录第一种方式需指明图像文件的绝对URL地址。第二种方式有两个参数:第一个参数指明图像文件的基地址,可以通过对getCodeBase方法的调用返回Applet的URL地址,如/Applet,如果图像与包含Applet的HTML文件在同一目录下,还可以用getDocumentBase()获得Applet主页的基地址;第二个参数指定从URL装入的图像文件名。当Applet与图像文件处于同一目录下时,只需要图像的文件名;当图像文件位于Applet之下的某个子目录,图像文件名中那么应包括相应的目录路径。例如:myImage=getImage(getCodeBase(),"image1.jpg"),myImage=getImage(getCodeBase(),"image/image2.jpg")。用getImage方法把图像装入后,Applet便可用Graphics类的drawImage方法显示图像,格式如下:g.drawImage(myImage,x,y,this);参数指明了待显示的图像、图像左上角的x坐标和y坐标以及this。编译之后运行Applet时,图像并非瞬间显示,这是由于程序不是在drawImage方法返回之前把图像完整地装入并显示的。drawImage方法创立了一个线程,该线程与Applet的原有执行线程并发执行,使图像边装入边显示,从而产生了不连续现象。为了提高图像显示效果,许多Applet都采用图像双缓冲技术,即先把图像完整地装入内存然后再显示在屏幕上。Applet还可以通过imageUpdate方法测定一幅图像已经装了多少在内存中。第1章目录16.4必备知识16.5动手做一做一、实训目的掌握在Applet中参加声音的方法;掌握在Applet中显示图片的方法。二、实训内容编写一个显示图像和播放声音的JavaApplet程序myAI,并编写对应的HTML代码。要求显示四张图片,并且声音文件播放一次。程序运行的结果如图16-2。三、简要提示通过继承JApplet类创立myAI类,定义类型为AudioClip和Image的成员变量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高三英语一轮复习传统文化语法填空:漆扇+宣纸+围棋
- 库素材包授权协议书模板
- 整车厂采购协议书模板
- 儿童数学思维培训教学协议
- 乳液试用服务合同
- 中班科学活动课件《认识蔬菜》
- 橱柜导购销售技巧培训
- DB13-T 5871-2023 矿山地质环境恢复治理工程资料管理规程
- 北师大版小学数学四年级上册第3单元 乘法《有多少名观众》示范课 教学课件
- 《安徽省一年级上学期数学第五单元试卷》
- 《秋兴八首(其一)》课件34张
- 光伏屋顶租赁合同(2篇)
- 横向科研项目申报书
- 水炮施工方案 消防水炮安装施工方案
- 2023年南方出版社六年级信息技术下册教案
- 心肺脑复苏新进展
- 医院感染暴发应急预案演练脚本与医院感染暴发应急预案演练记录
- 医疗器械不良事件报告表
- 科技创新领军人才申请表
- 瞬时弹性成像技术的临床应用培训课件
- 小学初中英语衔接教学市公开课获奖课件
评论
0/150
提交评论