电子教案-第12章.ppt
《电子教案-第12章.ppt》由会员分享,可在线阅读,更多相关《电子教案-第12章.ppt(28页珍藏版)》请在三一办公上搜索。
1、第12章 Java Applet,本章导读1.Java Applet的运行原理2.Java Applet中播放声音3.网页向Java Applet传值4.Java Applet中使用AWT组件5.Java Applet中使用Swing组件6.Java Applet中绘制图形7.Java Applet中绘制图像8.Java Applet 播放幻灯片和动画9.Java Applet的网络功能,12.1 Java Applet的运行原理,1Java Applet概述 2运行原理 以下是一个Java Applet程序,我们用这个程序来说明 Java applet运行原理。(1)网页的编写 Java A
2、pplet必须由浏览器来运行,因此我们必须编写一个超文本文件,告诉浏览器来运行这个Java Applet。假设Applet主类的名字是Boy,下面是一个简单的html文件“like.html”,,“like.html”文件告诉浏览器运行主类是Boy的Java Applet。超文本文件“like.html”中的标记 和 告诉浏览器将运行一个Java Applet,code告诉浏览器运 行哪个Java Applet。code“=”后面是主类的字节码文件。(2)Java Applet的生命周期 一个Java Applet的执行过程称为这个Java Applet的生命 周期。一个Java Applet
3、的生命周期会涉及如下方法的调用执行:init()、start()、stop()、destroy()、paint(Graphics g),JVM创建的主类Boy的对象在生命周期内将有下列行 为:1)浏览器内置的JVM创建了主类Boy对象后,立刻通知这个对象调用init()方法完成必要的初始化工作。初始 化的主要任务是创建所需要的对象、设置初始状态、装载图像、设置参数等。2)对象仅接着自动调用start()方法。在程序的执行过程中,init()方法只被调用执行一次。但start()方法将多次被自动调用执行。除了进入执行过程时调用方法start()外,当用户从Java Applet所在的Web页面转
4、到其他页面,然后又返回时,start()将再次被调用,但不再调用init()方法。,当浏览器离开Java Applet所在的页面转到其它页面时,主类创建的对象将调用stop()方法。如果浏览器又回到此页,则start()又被调用来启动Java Applet。在Java Applet的生命周期中,stop()方法也可以被调用多次。如果你在Java Applet中设计了播放音乐的功能,而没有在stop()方法中给出停止播放它的有关语句,那么当离开此页去浏览其他页时,音乐将不能停止。如果没有定义stop()方法,当用户离开Java Applet所在的页面时,Java Applet将继续使用系统的资源
5、。若定义了stop()方法,则可以挂起Java Applet的执行。,当浏览器结束浏览时,主类创建的对象自动执行 destroy()方法,结束Java Applet 的生命。该方法是父 类Applet中的方法,不必重写这个方法,直接继承即可。paint(Graphics g)方法可以使一个Java Applet在容器上显示某些信息,如文字、色彩、背景或图像等。在 Java Applet 的生命周期内可以多次调用。例如,当Java Applet被其它页面遮挡,然后又重新放到最前面、改变浏览器窗口的大小、以及Java Applet本身需要显示信息时,主类创建的对象都会自动调用paint()方法。,
6、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
7、方法(即隐藏父类的方法),根据需要来清除哪些部分或保留哪些部分。,在下面的例子2中,我们在paint()方法中,使用了repaint()方法,因此每当Java Applet调用paint()方法时,就会调用update方法。程序重写了update方法,清除paint方法所绘制的部分内容,并紧接着再调用paint()方法。,返回,12.2 Java Applet中播放声音,用Java可以编写播放.au、.aiff、.wav、.midi、.rfm格式的音频。au格式是Java早期唯一支持的音频格式。要 在Java Applet中播放声音,可以使用Applet的一个静态的方法(类方法):newAud
8、ioClip(URL url,String name)或Applet类的实例方法:getAudioClip(Url url,String name)根据参数url提供的地址,以及该处的声音文件name,可以获得一个用于播放的音频对象(AudioClip类型对象)。这个音频对象可以使用下列方法来处理声音文件。play()播放声音文件 name。loop()循环播放name。stop()停止播放name。例子3,返回,12.3 网页向Java Applet传值,我们可以在超文本中使用若干个标志把值传递到Java Applet中,这样就实现动态地向程序传递信息,不必重新编译程序,便于程序的维护和使用
9、。例子4,返回,12.4 Java Applet中使用AWT组件,Applet类是容器的间接子类,因此我们可以在这个容器中添加组件,处理组件事件,完成一些工作。由于目前的浏览器仅仅支持JDK1.1版本中的类库,所以Java Applet中只能使用JDK1.1版本公布的java.awt包中的组件,比如Button、TextField、TextArea等。在下面的例子中,我们把Java Applet的布局设置为 BorderLayout布局。,返回,12.5 Java Applet中使用Swing组件,如果你的机器安装了SDK1.4以后的版本,那么你的浏览器中的JVM就会被更新为当前SDK所带的J
10、VM,这样一来,你的浏览器就可以使用javax.awing包中的组件。使用javax.swing包中的组件时,Java Applet的主类应当是JApplet的子类。JApplet是Applet的一个直接子类,在javax.swing包中。JApplet有许多新的特性:不可以把组件直接添加到JApplet容器中。JApplet容器也含有一个称为内容面板的容器,应当把组件添加到内容面板中。不能为JApplet容器设置布局,而应当为JApplet容器的内容面板设置布局。内容面板的默认布局是BorderLayout布局。JApplet容器通过调用方法:getContentPane(),得到内容面板。
11、例子6,返回,12.6 Java Applet中绘制图形,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)的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 教案 12
链接地址:https://www.31ppt.com/p-6592970.html