-第8讲_图形用户界面(下)【Java程序设计】

上传人:东****0 文档编号:157985204 上传时间:2020-12-29 格式:PDF 页数:23 大小:323.16KB
返回 下载 相关 举报
-第8讲_图形用户界面(下)【Java程序设计】_第1页
第1页 / 共23页
-第8讲_图形用户界面(下)【Java程序设计】_第2页
第2页 / 共23页
-第8讲_图形用户界面(下)【Java程序设计】_第3页
第3页 / 共23页
-第8讲_图形用户界面(下)【Java程序设计】_第4页
第4页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《-第8讲_图形用户界面(下)【Java程序设计】》由会员分享,可在线阅读,更多相关《-第8讲_图形用户界面(下)【Java程序设计】(23页珍藏版)》请在金锄头文库上搜索。

1、Java语言程序设计 Applet Applet的生命周期 Applet的绘图周期 Applet的GUI编程 将Applet嵌入HTML Applet的主要方法 Applet与Application Java的两种程序结构 Application程序 public class ApplicationClass public static void main(String args) 唯一入口点:main方法 3 Java的两种程序结构 Applet可否只要一个入口点呢? 由于Browser有不同的消息要通知Applet,所以需要多 入口。 public class AppletClass ex

2、tends Applet public void init() start(). stop() destroy() paint(g) update(g) 4 Applet Applet 是访问internet 服务器、在internet 上传播 的、自动安装的、作为部分Web 文档运行的小应 用程序。当小应用程序到达客户端,它被限制访问 资源,以使它能够在不受病毒威胁和破坏数据完整 性的情况下生成一个二进制的多媒体用户界面以及 完成复杂的计算。 一个小应用程序应该是java.applet.Applet的子类 JApplet 扩展了Applet 类。使用Swing 的小应用程 序必须是JAppl

3、et 的子类 5 Applet的生命周期 6 init()初始化 第一次 被载入 start()启动 启动执行 Applet stop()终止 Browser转向 其他网页时 Applet暂停 执行 Applet回到当前 页,重新激活 Applet destroy()消亡 关闭 浏览器 构造方法 vs. init()方法 结论: 构造方法的执行时间早于init() 生命周期各方法 Applet的建立、释放 init():初始化,Applet被浏览器载入时运行 start():启动Applet,每次回到当前页时运行 stop():暂停Applet,每次离开当前页时执行 destroy():释放对

4、象资源,关浏览器时执行 生命周期称为Applet的主线程 一般由Browser或appletviewer自动调用 7 Applet的绘图周期 绘图周期称为AWT线程 Applet一开始运行,就自动启动了这两个线程 8 paint( ) 当某些操作破坏了显示,需重新绘制时 第一次绘制 repaint() 编程 控制 1. 擦除并填充成背景色 2. 调用paint() update() 调用 示例 Applet生命周期 LifeCycle.java 显示Applet生命周期的各个状 态及其间的切换 显示浏览器如何自动调用 Applet的各主要方法 统计这些主要方法的执行次 数,并用图形显示出来 9

5、 10 public class LifeCycle extends Applet private int InitCnt, StartCnt, .; /各变量用于计数执行次数 public LifeCycle() /在init()执行前执行构造函数 InitCnt = 0; /计数初值设为0 public void start() StartCnt+; /每执行一次方法计数加1 public void paint(Graphics g) PaintCnt+; /每执行一次方法计数加1 /画出坐标轴、标尺和表示执行次数的矩形 / class end Applet类 Applet类的层次结构 j

6、ava.lang.Object java.awt.Component .Container .Panel .Applet Applet小程序的实现:extends Applet 11 Applet的GUI编程 Applet是一种特殊的Panel, 它是Java Applet程序 的最外层容器。 Applet容器的缺省布局策略与 Panel一致, 都是FlowLayOut 。 可放置简单构件(Label、Button等)以及其他非顶层容 器(Panel); 可绘制用户自定义成分(绘制图形、文字、显示图象) 事件处理 12 Applet执行方式 Applet编译生成的字节码文件(.class)存储

7、于Web Server .class文件名嵌在HTML页面中 当Web Client的Browser下载并显示含有Applet的 HTML时,将自动执行该Applet:显示动画声音, 响应用户事件 13 Applet的下载过程 14 解释并显示 HTML文件 HTML文件 WWW服务器 存放HTML WWW服务器 存放.class WWW浏览器 (Browser) 请求 HTML 文件 下载HTML 文件 请求 Applet 字节码 文件 下 载字 节码 解释执行字节码 将Applet嵌入HTML HTML文件可以向它所嵌入的Applet传递参数, 这个任务是通过 HTML文件的一个专门标记来

8、完成 String getParameter(String name)=value 在Applet小程序中, 利用getParameter(String name)方法来获取 HTML传递来的参数 15 Applet类的方法 获取Applet的有关信息 getParameter(String):返回HTML中设定的值 getCodeBase():返回.class所在网址URL getDocumentBase():返回HTML的URL 16 Applet类的方法 获取多媒体文件 getImage(URL):获取给定图象 play(URL):播放音频波形数据(.au格式) getAudioClip

9、(URL):获取音频波形数据 java.applet.AudioClip,可同时播放多个AudioClip对象, 播放方法: play() loop() stop() 例:testaudio.java 17 18 public class testaudio extends Applet AudioClip bg_sound1,bg_sound2; /定义声音对象实体 public void init() bg_sound1 = getAudioClip(getCodeBase(), sound/Mission.au); /get the AudioClip item1 bg_sound2 =

10、 getAudioClip(getCodeBase(), sound/bulletsound.au); /get the AudioClip item2 public void start() /can play multiple items at the same time bg_sound1.play(); bg_sound2.loop(); Applet类的方法 与浏览器的通讯 showStatus(String) 在浏览器的状态栏输出信息 getAppletContext( ) 返回小应用程序环境 19 同时实现Applet与Application? 实现方法 在Applet中加入ma

11、in()方法 在main()中创建一个Frame对象和一个Applet对象 使用add()把Applet对象放入Frame对象中, 并显式调用 Applet对象的init()和start() 例:Button2.java 20 21 / A main() for the application: public static void main(String args) Button2 applet = new Button2(); Frame aFrame = new Frame(Button2); aFrame.addWindowListener(new WL(); aFrame.add(a

12、pplet, BorderLayout.CENTER); aFrame.setSize(300,200); applet.init();/must write explicitly init() and start() applet.start(); aFrame.setVisible(true); Applet与Application的区别 运行环境 Applet浏览器 Application行命令 入口方式 Applet多消息,多入口 Application唯一入口main( ) 执行程序来源 Applet实际使用时来自于网络 Application本地程序 22 区别 安全性方面 Applet在安全性方面的限制 Applet不能访问本地文件,如读、写 Applet不能调用本地的应用程序和运行时的动态连接库 Applet不能做网络连接,除非它连接的对象是下列两个 站点之一 下载包含本Applet的HTML站点 下载本Applet字节码文件的站点 23

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

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

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