西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt

上传人:本田雅阁 文档编号:3366962 上传时间:2019-08-18 格式:PPT 页数:27 大小:479.08KB
返回 下载 相关 举报
西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt_第1页
第1页 / 共27页
西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt_第2页
第2页 / 共27页
西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt_第3页
第3页 / 共27页
西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt_第4页
第4页 / 共27页
西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt》由会员分享,可在线阅读,更多相关《西南科技大学网络教育系列课程高级语程序设计Javappt课件.ppt(27页珍藏版)》请在三一文库上搜索。

1、西南科技大学网络教育系列课程 高级语程序设计(Java),第十二章 Java Applet,Applet概述 Applet是用Java编写的小应用程序,它能够嵌入在HTML网页中,并由支持Java的Web浏览器来解释执行。 Applet最早是用于应用程序的发布,这一功能已被Java Web Start代替。 现广泛用于主从架构或网络程序设计。,Applet的工作原理,首先确定Applet的存在(*.class文件)。 使用Applet,格式: ,Applet和HTML,定义调用的Applet程序名,注意全名和大小写。,浏览器不支持Applet时,显示的代替文字。,Applet的安全机制 从We

2、b上下载的java applet是在称为沙箱 (sandbox)的安全环境中运行。 applet绝不能运行任何本地可执行程序。 applet除了可以与从中下载它们的服务器进行通信外,不能与任何主机通信。 applet不能读写本地计算机的文件系统。 applet不能获取除版本等以外的任何关于本地计算机的信息。 applet弹初式窗口都回带有一个警告信息。 applet可以使用签名方式来获取更大的权限。,Applet的生命周期,Applet主要方法 根据执行过程中发生的事件来定义生命周期,对于每个事件将自动调用一种方法。 init():初始化时调用,主要是创建所需要的对象、设置初始状态、设置参数等

3、。 start():调用init方法之后自动调用这个方法。 stop():退出网页时停止执行Applet程序。 destroy():离线时释放本对象及其相关的资源。 paint(Graphics g):绘制Applet图形。,Applet图形的显示和刷新 Applet图形的显示和刷新由三个方法完成:paint(),repaint(),update(),都是从ponent类继承来的 Applet图形的显示和刷新由一个独立线程控制,称为AWT线程 如果Applet部分显示内容被其他窗口覆盖,那么其他窗口移开或关闭时,曾被覆盖部分必须重画,此时AWT线程会自动调用paint()方法 程序更新显示内容

4、,可以使用repaint()方法通知系统要更新显示的内容,此时AWT线程会自动调用update()方法清空当前画面,然后调用paint()方法绘制新的内容,Applet的创建 编写Applet时,必须注意下列问题 在Applet原程序文件中的开始,必须包含一些包,即有如下语句: import java.applet.* 或 import java.applet.Applet,必须有一个类声明为public,而且文件名必须与类名保持一致,该类必须继承自java.applet.Applet,完整的声明如: public class MyFirstApplet extends Applet,Appl

5、et的结构,import java.awt.*; import java.applet.*; public class AppletClassName extends Applet public void init() /初始化变量、装载图片、读取参数值等 public void start() /启动程序执行或恢复程序执行 public void stop() /挂起正在执行的程序,暂停程序的执行 public void destroy() /终止程序的执行释放资源 public void paint(Graphics g) /完成绘制图形等操作 ,import java.awt.Graph

6、ics; import java.applet.Applet; public class JavaApplet extends Applet String print_text; public void init() print_text = “Java Applet“; public void paint(Graphics g) g.drawString(print_text, 20, 20); ,Applet示例,重写了Applet类的init( ) 方法。,覆盖了Applet类的paint( )方法。,用于在屏幕上给定的位置绘制字符串,Applet 和Application,网页向Jav

7、a Applet传值,在超文本中使用若干个标志把值传递到Java Applet中,实现动态地向程序传递信息,不必重新编译程序,便于程序的维护和使用。,如: ,public String getParameter(String name) 如:String s1 = this. getParameter(“girl”);,Java Applet中播放声音,用Java可以编写播.au .aiff .wav .midi .rfm格式的音频。 在Java Applet中播放声音,可以使用Applet的一个方法: 静态的方法: newAudioClip(URL url,String name) 实例方法

8、: getAudioClip(Url url,String name) 处理声音文件的方法 play() 播放声音文件 loop() 循环播放 stop() 停止播放。,Java Applet中使用AWT组件,Applet类是容器类Container的间接子类。 可以在这个容器中添加组件,处理组件事件。 目前的浏览器仅仅支持JDK1.1版本中的类库,Java Applet中只能使用JDK1.1版本公布的java.awt包中的组件。,如: public void init() add(new Button(“Test”); ,Applet的默认布局为FlowLayout,Java Applet中

9、使用Swing组件,SDK1.4以后的版本,浏览器中的JVM就会被更新为当前SDK所带的JVM。 浏览器就可以使用javax.awing包中的组件。 使用javax.swing包中的组件时,Java Applet的主类应当是JApplet的子类。 JApplet是Applet的一个直接子类,在javax.swing包中。,JApplet新特性: 不可以把组件直接添加到JApplet容器中。 JApplet容器也含有一个称为内容面板的容器,应当把组件添加到内容面板中。 不能为JApplet容器设置布局,而应当为JApplet容器的内容面板设置布局。 内容面板的默认布局是BorderLayout布

10、局。 JApplet容器通过调用方法: getContentPane(),得到内容面板。,Java Applet中绘制图形,绘制文本 使用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是首字符在数组中的位置 。,绘制直线 drawLine(int x1

11、,int y1,int x2,int y2):绘制从起点(x1,y1)到终点(x2,y2)的直线段。 绘制矩形 drawRect (int x,int y,int w,int h):绘制矩形。 fillRect (int x,int y,int w,int h):填充矩形。 矩形的左上角的坐标由参数x、y指定,矩形的宽和高由参数w、h指定。,绘制圆角矩形 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):

12、填充圆角矩形 参数arcW、arcH指定圆角的尺寸。 绘制椭圆 drawOval(int x,int y,int w,int h):绘制椭圆。 fillOval(int x,int y,int w,int h):绘制填充椭圆。 x、y给出椭圆距x轴和y轴的距离,参数w、h给出椭圆的宽和高。,绘制圆弧 圆弧就是某个椭圆的一部分。 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

13、arcAngle):填充圆弧。 x、y、width、heigth指定圆弧的位置和大小。 参数starAngle和 arcAngle的单位都是“度”。 参数starAngle,arcAngle表示从starAngle的角度开始逆时针或顺时针方向画arcAngle度的弧。,正值,负值,Java Applet中绘制图像,图像是矩形内的一组像素。 Java支持两种主要的图像格式: GIF JPEG Applet类提供了一个重要的方法: public Image getImage(URL url,String name):返回可以被显示在屏幕上的Image对象的引用,即将URL地址中,文件名为name的

14、文件加载的内存,并返回该内存的首地址。,Java Applet显示java目录中的图像的方法: public URL getCodeBase():返回一个URL对象,该对象包含Java Applet 所在的目录。,public URL getDocumentBase():返回一个嵌入Java Applet的网页的URL对象。 public boolean drawImage(Image img,int x,int y,ImageObserver observer):绘制img对象。 x,y是要绘制指定图像的矩形的左上角所处的位置。 observer是加载图像时的图像观察器。,Applet类已经

15、实现了ImageObserver接口,它可以作为加载图像时的图像观察器。 将this作为最后一个参数传递给drawImage()便可将Applet对象传递过去, 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):在矩形内绘制加载的图像。,获取图像的属性: img.getHeight(this):获取被加载的图像的高。 img.getWidth

16、(this):获取被加载的图像的宽。,例: public void init() img1 = getImage(getCodeBase(),“tom.jpg“); img2 = getImage(getCodeBase(),“jerry.jpg“); public void paint(Graphics g) g.drawImage(img1,0,0,100,100,this); g.drawImage(img2,120,120,200,100,this); ,Java Applet 播放幻灯片和动画,Java Applet播放幻灯片 在HTML中播放图像切换幻灯片。 Java Applet

17、播放动画 使用多线程技术实现Applet中动画的播放。 动画是一种错觉,运动的错觉是通过快速显示一组图片造成的,而这些图片在内容上只有微小的变化。,Java Applet的网络功能,使用URL 常用方法 public AppletContext getAppletContext():返回一个AppletContext对象,称作Java Applet所在的运行环境。 void showDocument(URL url)返回一个AppletContext对象。,使用套接字 Java Applet程序的字节码驻留在服务器端,需要下载到客户端的浏览器来运行。 JavaApplet程序是客户端程序。 Java Applet程序只能和它所驻留的服务器建立套接字连接。 public URL getDocumentBase():返回一个嵌入Java Applet的网页的URL对象。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1