Java程序设计 教学课件 ppt 作者 刘慧宁 09 09

上传人:E**** 文档编号:89156035 上传时间:2019-05-19 格式:PPT 页数:29 大小:356.51KB
返回 下载 相关 举报
Java程序设计 教学课件 ppt 作者 刘慧宁 09 09_第1页
第1页 / 共29页
Java程序设计 教学课件 ppt 作者 刘慧宁 09 09_第2页
第2页 / 共29页
Java程序设计 教学课件 ppt 作者 刘慧宁 09 09_第3页
第3页 / 共29页
Java程序设计 教学课件 ppt 作者 刘慧宁 09 09_第4页
第4页 / 共29页
Java程序设计 教学课件 ppt 作者 刘慧宁 09 09_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《Java程序设计 教学课件 ppt 作者 刘慧宁 09 09》由会员分享,可在线阅读,更多相关《Java程序设计 教学课件 ppt 作者 刘慧宁 09 09(29页珍藏版)》请在金锄头文库上搜索。

1、第9章 applet和多媒体,9.1 applet小应用程序 9.2 Java applet与application 9.3 显示图像 9.4 播放动画 9.5 播放音频文件 9.6 习题,9.1 applet小应用程序,9.1.1 类Applet 9.1.2 类JApplet 9.1.3 向applet传递参数,9.1.1 类Applet,applet是一种可以在因特网上传递,并在Web浏览器中运行的小应用程序。 每个Java application都必须有main方法,该方法在application运行时被系统自动调用。不过,applet不需要main方法,它的运行依赖于Web浏览器。 要

2、编写applet,就必须继承自类Applet,并覆盖其中必要的方法。类Applet为applet提供了基本的框架结构,该框架结构是applet和其运行环境之间的标准接口。,9.1.1 类Applet(续),Web浏览器能够自动调用类Applet中的下列方法来控制applet小应用程序的生成和运行: 方法init 方法start 方法stop 方法destroy,9.1.1 类Applet(续),方法init: 第1次加载或重装某个applet时,Web浏览器首先会调用该applet的公用无参构造方法创建一个applet对象(因此,定义applet的类中必须有公用无参构造方法)。 创建apple

3、t对象并加载后,Web浏览器就会自动调用该对象中的方法init初始化applet。如果applet需要进行初始化操作,就应该覆盖这个方法。,9.1.1 类Applet(续),方法start: 调用方法init后,Web浏览器就会自动调用该方法开始运行applet。applet被再次访问时也需要调用方法start。如果希望每次包含当前applet的网页被访问时都执行某些操作,就应该覆盖这个方法。,9.1.1 类Applet(续),方法stop: 当从包含当前applet的网页转到其他网页时,Web浏览器会自动调用该方法终止applet的运行。如果希望每次包含当前applet的网页不可见时都执行某

4、些操作,就应该覆盖这个方法。Web浏览器在调用方法destroy之前,总会调用该方法。 方法destroy: 当applet不再被需要时,Web浏览器会自动调用该方法以释放其所占系统资源。如果applet希望在被销毁前执行某些操作,就应该覆盖这个方法。,9.1.1 类Applet(续),9.1.2 类JApplet,applet程序应直接继承于JApplet。 JApplet是Applet的子类,其属于Swing组件。 applet是在Web浏览器中运行的,Web浏览器能自动将applet放置在它里面,并使它可见。 例9-1 编写applet程序,源代码,运 行,9.1.2 类JApplet(

5、续),applet程序的字节码文件应嵌入网页。 ,9.1.3 向applet传递参数,在HTML文件向applet传递参数: 在applet中调用类Applet中下述方法读取: public String getParameter(String name) 例9-2 向applet传递参数,源代码,运 行,9.2 Java applet与application,applet与application的不同: 每次运行applet时都必须下载所有的相关文件,因此显示某些applet时可能需要花不少的时间。 为了保证网页运行的安全,applet无法访问本地文件,除非它通过了“数字签名”。,9.2 J

6、ava applet与application(续),Java applet与application之间大多可以相互转换,不过,编写一个既可作为applet运行,又可作为application运行的程序或许更有实际意义。一般来说,编写这样的程序并不难。 例9-3 程序作为applet和application运行,源代码,运 行,9.3 显示图像,9.3.1 使用类Applet 9.3.2 使用类ImageIcon 9.3.3 使用类MediaTracker跟踪图像下载,9.3.1 使用类Applet,类Applet中获取图像对象的方法: public Image getImage(URL url

7、) public Image getImage(URL url, String name) 上述两个方法都用于从指定的URL地址获取图像对象。使用第1个方法时,必须将图像文件名包含进完整的URL地址;而使用第2个方法时,程序员指定的图像文件名与URL地址分开。URL是统一资源定位符,用于描述Internet上资源的位置,Java语言中定义了一个相应的类.URL。,9.3.1 使用类Applet(续),applet只能从它或包含它的HTML文件所在的目录和子目录中读取文件。 为了取得当前applet或包含它的HTML文件的URL地址,可以调用类Applet中定义的下述方法: public URL

8、 getCodeBase() public URL getDocumentBase() 例: Image image1=getImage(getCodeBase(), “image/T1.gif“); /在当前applet所在目录的子目录image中装入指定图像文件 Image image2=getImage( getDocumentBase(),“T1.gif“); /在包含当前applet的HTML文件所在目录中装入指定图像文件,9.3.1 使用类Applet(续),显示图像的方法(类Graphics): public abstract boolean drawImage(Image im

9、g, int x, int y,ImageObserver observer) public abstract boolean drawImage(Image img, int x, int y, int width, int height, ImageObserver observer) 例9-4 使用类Applet显示图像,源代码,运 行,9.3.2 使用类ImageIcon,类ImageIcon的构造方法: public ImageIcon(String filename) public ImageIcon(Image image) public ImageIcon(URL locati

10、on),9.3.2 使用类ImageIcon (续),可以使用类java.lang.Class来获取相应的URL地址。 Java程序运行时,每载入一个类或接口,系统就会自动创建一个相应的属于类Class的对象(可以通过调用类Object中定义的方法getClass获取)。通过这个对象,可以访问该类的相关信息,也可以调用类Class中定义的方法getResource(String name)来获取指定文件name的URL地址。必须注意,文件name必须保存在相应类文件所在的目录或子目录中。,9.3.2 使用类ImageIcon (续),获取URL地址: URL url=this.getClass

11、(). getResource(“T1.gif“); 例9-5 使用类ImageIcon显示图像,源代码,运 行,9.3.3 使用类MediaTracker跟踪图像下载,调用方法getImage时,系统会启动一个独立的线程来下载图像,这使得程序在下载图像的同时能执行其他操作。因此,正在下载的图像有可能只能部分地显示。为了解决这个问题,必须使用类MediaTracker编写相关的跟踪程序判断图像是否已经完全下载。 类ImageIcon会自动使用类MediaTracker监视图像的下载状态,并保证在完成下载之前程序不会试图使用该图像。,9.4 播放动画,控制动画播放的方法: 类java.swing

12、.Timer 多线程 类Timer的对象能以指定时间频率触发ActionEvent事件,能够用作绘制动画中每个图像的触发器。 例9-6 使用类java.swing.Timer播放动画,源代码,运 行,9.4 播放动画(续),双缓冲技术: 首先创建一个后台的绘图缓冲区,然后在该缓冲区中绘制图像(图形),只有绘制工作完成后才一次性地将缓冲区中的图像(图形)在屏幕上显示出来。 JComponent组件在默认情况下都使用双缓冲技术绘图。,9.5 播放音频文件,Java 1.2之后不仅允许在applet中播放音频文件,还允许在application中播放。 Java 1.2之后可以播放的音频文件格式为W

13、AV、AIFF、MIDI、AU、RMF等。,9.5.1 在applet中播放音频文件,类Applet中用于在applet中播放音频的方法: public void play(URL url) public void play(URL url,String name) 例: play(getDocument(),“T1.au“); 注意:使用上述方法播放音频文件时,该方法下载的音频文件在每次播放完毕后都会被丢弃。,9.5.1 在applet中播放音频文件(续),类Applet中用于获取AudioClip对象的方法: public AudioClip getAudioClip (URL url)

14、public AudioClip getAudioClip(URL url,String name) AudioClip中控制音频文件播放的方法: public void play() public void loop() public void stop(),9.5.1 在applet中播放音频文件(续),每次调用方法loop或play播放音频文件时,系统都会为它们各自启动一个独立的线程。 方法stop只能停止当前音频文件的播放。 例9-7 在applet中播放音频文件,源代码,运 行,9.5.2 在application中播放音频文件,Java 1.2在类Applet中定义了一个静态方法: public static final AudioClip newAudioClip (URL url) /从指定的url位置取得AudioClip对象 例: URL url=this.getClass().getResource (filename); AudioClip audio=Applet.newAudioClip (url);,9.6 习 题,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号