西南科技大学网络教育系列课程 高级语程序设计(Java) 第十二章 Java Applet.

Slides:



Advertisements
Similar presentations
网络应用程序设计 2014 JavaBean. JavaBean 及其属性 JavaBean 就是一种 Java 的组件技术 JavaBean 是 Java 类 JavaBean 通过约定的方法名实现属性功能 简单属性 void setXxx(Type value) Type getXxx() boolean.
Advertisements

第 2 章 Java 运行环境搭建 2.1 Java 的运行系统 2.1 Java 的运行系统 2.2 JDK 的安装与配置2.2 JDK 的安装与配置 2.3 Java 开发工具包 2.4 Java 源文件编辑环境的选择 2.5 Application 和 Applet 程序的编写与运行.
Java 程序分类 Java Application :是完整程序,需要独立的解 释器解释运行;以 “.java” 为后缀的文件,以 main() 方法作为程序入口,由 java 编译器编译生 成字节码,由 Java 解释器加载执行字节码。 Java Applet 没有 main() 方法作为程序入口,是嵌在.
Java 程序设计 案例教程 北京大学出版社 第 01 章. Java 程序设计案例教程 第 01 章 Java 语言与面向对象程序设计 Java 语言的历史 Java 语言的特点 Java 程序的分类 Java 环境配置 Eclipse 的安装 Java 程序的调试 教学目标.
第九章补充 图形图像编程基础 主要内容: 1 、图形操作 2 、图象操作 3 、播放声音 重点: 掌握 Java2D 、 ImageIo 的使用 难点: 了解 JMF.
软件编程基础 Java Applet 是另一类非常重要的 Java 程序, 虽然它的源代码编辑与字节码的编译生成过程与 Java Application 相同,但它却不是一类可以独立运 行的程序,相反,它的字节码文件必须嵌入到另一 种语言 HTNI 的文件中并由负责解释 HTML 文件的 WWW 浏览器充当其解释器,来解释执行.
第1章 Java语言概述.
《 Java开发环境配置》 主讲人:耿力.
Java 2实用教程(第3版)教学课件 主讲教师:张国平
JAVA程序设计 天津工程职业技术学院计算机工程系软件技术教研室.
第八章:网络应用制作技术 本章介绍网络各种应用中所涉及的基本概念和制作技术,包括HTML、网页的制作、Java、Java Script语言的初步基础,VRML语言的基本功能,以及网络环境下分布式数据库系统和客户服务体系的构造方法及技术。
Java程序设计教程 第一讲 Java概述.
第7章 Java小程序 7.1 Java小程序概述 7.2 Java小程序的设计方法和运行环境 7.3 Java小程序的生命周期
Hello小程序的运行和编译 Java AppletJava小程序的构成 1、关键字
第19讲 applet程序设计 1/.
项目:贪吃蛇游戏设计 工作任务一:系统设计(system design) 工作任务二:豆类(Bean)设计
6.5 图形界面的布局设计 每一个容器组件都有一个默认的布局管理方式,也可以用setLayout方法来设置其他布局管理器。一旦确定了布局管理方式,容器组件就可以用add方法加入组件。 布局管理器用来确定组件在容器中的位置和大小,AWT中定义了布局管理器接口LayoutManager的实现类来实现此功能。
Java Applet的运行原理 在网页向Java Applet传值 在Java Applet中播放声音 在Java Applet中使用组件
第11章 Java多媒体技术.
第14章 图形与图像 14.1 绘制文本 14.2 绘制基本图形 14.3 建立字体 14.4 清除 14.5 Java 2D
第九讲 Java Applet 1、所有小应用程序的根源 2、小应用程序的执行 3、图形操作 4、播放声音 5、图象操作 6、动态效果
面向对象技术Java Object-Oriental Technology Java
项目八 显示时钟.
第三部分 Java语言编程应用篇 第6章 Java语言的 图形用户界面开发技术 (之二).
第6章 网页图像处理 通过本章学习,应该掌握以下内容: 能够选择合适的网页颜色 了解网页图像的基本格式 掌握使用网页图像的要点
第1章 java简介及环境搭建 第1章 Java简介及开发环境搭建.
C++中的声音处理 在传统Turbo C环境中,如果想用C语言控制电脑发声,可以用Sound函数。在VC6.6环境中如果想控制电脑发声则采用Beep函数。原型为: Beep(频率,持续时间) , 单位毫秒 暂停程序执行使用Sleep函数 Sleep(持续时间), 单位毫秒 引用这两个函数时,必须包含头文件
在PHP和MYSQL中实现完美的中文显示
第九章 字符串.
Ch02 視窗Swing套件 物件導向系統實務.
Java语言程序设计-JAVA图形与图像处理
2018/11/15 面向对象与多线程综合实验-GUI设计 教师:段鹏飞.
Java Applet 介绍.
Ch07 Java Applets 物件導向系統實務.
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
窗体图形图像处理与 Applet程序设计 主讲:赖国荣 QQ:
Chapter 9 設計的精細製作: 行動計算 Software Engineering – An Engineering Approach, James F. Peters & Witold Pedrycz.
第二讲 搭建Java Web开发环境 主讲人:孙娜
辅导课程六.
第八章 Applet小应用程序.
Java语言程序设计 第八部分 Applet小程序.
绘制圆与多边形 椭圆形 绘制椭圆形的方法是 drawOval(x ,y , width , height), 绘制实心椭圆形的方法是
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
Ch04 事件處理 物件導向系統實務.
CH04 視窗中元件排排坐 物件導向系統實務.
資訊學科中心研習 JAVA程式設計專題 臺北市立大理高級中學 黃世隆 2019/2/23.
SOA – Experiment 2: Query Classification Web Service
《JAVA程序设计》 语音答疑 辅导老师:高旻.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
Java程序设计 第13章 图形.
第四章 团队音乐会序幕: 团队协作平台的快速创建
姚金宇 MIT SCHEME 使用说明 姚金宇
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
项目二:HTML语言基础.
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
_13简单的GDI绘图操作 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司 官网地址:
Chapter 18 使用GRASP的对象设计示例.
Visual Basic程序设计 第13章 访问数据库
辅导课程十五.
第6章 面向对象的高级特征 学习目标 本章要点 上机练习 习 题.
Java语言程序设计 清华大学出版社 第6章 java图形与图像处理.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
Applet.
创建、启动和关闭Activity 本讲大纲: 1、创建Activity 2、配置Activity 3、启动和关闭Activity
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
《手把手教你学STM32-STemWin》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司
5.1 Applet的基本概念 5.2 Applet的编写 5.3 Applet的多媒体支持
变量定位图形 Java中数据的类型分为四种:基本数据类型、数组类型、类类型以及接口类型。任何常量和变量都一定是上述四种数据类型中的一种。简单数据类型的实例化有两种:变量和常量。 变量名和常量名必须是Java语言中合法的标识符。 常量是在程序运行期间值不改变的量。 变量是在程序运行期间值可通过赋值改变的量,
Presentation transcript:

西南科技大学网络教育系列课程 高级语程序设计(Java) 第十二章 Java Applet

Applet的工作原理 现广泛用于主从架构或网络程序设计。 Applet概述 Applet是用Java编写的小应用程序,它能够嵌入在HTML网页中,并由支持Java的Web浏览器来解释执行。 Applet最早是用于应用程序的发布,这一功能已被Java Web Start代替。 现广泛用于主从架构或网络程序设计。

Applet和HTML 首先确定Applet的存在(*.class文件)。 使用Applet,格式: <Applet code=“*.class” codebase=“jbase” width=200 height=200 vspace=2 hspace=3 align=“top” name=“java01” alt=“不支持 Applet”> </Applet> 定义调用的Applet程序名,注意全名和大小写。 Applet与HTML不在一个目录,定义调用的Applet的路径 Applet程序显示区的宽度和高度 Applet与其他元素的水平和竖直边距 Applet的对齐方式 Applet的名字。 浏览器不支持Applet时,显示的代替文字。

从Web上下载的java applet是在称为沙箱 (sandbox)的安全环境中运行。

Applet的生命周期 下载 实例化 init()初始化 start()启动 stop()暂停 destroy()终止 启动 转入 后台 重新 激活 退出

根据执行过程中发生的事件来定义生命周期,对于每个事件将自动调用一种方法。 Applet主要方法 根据执行过程中发生的事件来定义生命周期,对于每个事件将自动调用一种方法。 init():初始化时调用,主要是创建所需要的对象、设置初始状态、设置参数等。 start():调用init方法之后自动调用这个方法。 stop():退出网页时停止执行Applet程序。 destroy():离线时释放本对象及其相关的资源。 paint(Graphics g):绘制Applet图形。

Applet图形的显示和刷新 Applet图形的显示和刷新由三个方法完成:paint(),repaint(),update(),都是从java.awt.component类继承来的 Applet图形的显示和刷新由一个独立线程控制,称为AWT线程 如果Applet部分显示内容被其他窗口覆盖,那么其他窗口移开或关闭时,曾被覆盖部分必须重画,此时AWT线程会自动调用paint()方法 程序更新显示内容,可以使用repaint()方法通知系统要更新显示的内容,此时AWT线程会自动调用update()方法清空当前画面,然后调用paint()方法绘制新的内容

Applet的创建 编写Applet时,必须注意下列问题 在Applet原程序文件中的开始,必须包含一些包,即有如下语句: import java.applet.* 或 import java.applet.Applet 必须有一个类声明为public,而且文件名必须与类名保持一致,该类必须继承自java.applet.Applet,完整的声明如: public class MyFirstApplet extends Applet

Applet的结构 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){ //完成绘制图形等操作}

Applet示例 import java.awt.Graphics; import java.applet.Applet; 重写了Applet类的init( ) 方法。 import java.awt.Graphics; 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类的paint( )方法。 用于在屏幕上给定的位置绘制字符串

Applet 和Application Applet 应用程序 Applet基本上是为部署在Web上而设计的 应用程序是为作为独立程序工作而设计的 Applet是通过扩展 java.applet.Applet 类创建的 应用程序则不受这种限制 Applet 通过appletviewer或在支持Java的浏览器上运行 应用程序使用Java解释器运行 Applet 的执行从 init() 方法开始 应用程序的执行从 main() 方法开始 Applet必须至少包含一个 public 类,否则编译器就会报告一个错误。在该类中没有 main( )方法。 对于应用程序,public 类中必须包括main( ),否则无法运行。

网页向Java Applet传值 在超文本中使用若干个<Param…>标志把值传递到Java Applet中,实现动态地向程序传递信息,不必重新编译程序,便于程序的维护和使用。 如: <applet code= “NetPageExample.class” width=“200” height=“200”> <Param name="girl" value ="160"> <Param name="boy" value ="175"> </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) 实例方法: 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中使用Swing组件 SDK1.4以后的版本,浏览器中的JVM就会被更新为当前SDK所带的JVM。 浏览器就可以使用javax.awing包中的组件。 使用javax.swing包中的组件时,Java Applet的主类应当是JApplet的子类。 JApplet是Applet的一个直接子类,在javax.swing包中。

JApplet新特性: 不可以把组件直接添加到JApplet容器中。 JApplet容器也含有一个称为内容面板的容器,应当把组件添加到内容面板中。 不能为JApplet容器设置布局,而应当为JApplet容器的内容面板设置布局。 内容面板的默认布局是BorderLayout布局。 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是首字符在数组中的位置 。

drawRect (int x,int y,int w,int h):绘制矩形。 绘制直线 drawLine(int x1,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):填充圆角矩形 参数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给出椭圆的宽和高。

x、y、width、heigth指定圆弧的位置和大小。 参数starAngle和 arcAngle的单位都是“度”。 绘制圆弧 圆弧就是某个椭圆的一部分。 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 arcAngle):填充圆弧。 x、y、width、heigth指定圆弧的位置和大小。 参数starAngle和 arcAngle的单位都是“度”。 参数starAngle,arcAngle表示从starAngle的角度开始逆时针或顺时针方向画arcAngle度的弧。 正值 负值

Java Applet中绘制图像 图像是矩形内的一组像素。 Java支持两种主要的图像格式: Applet类提供了一个重要的方法: GIF JPEG Applet类提供了一个重要的方法: public Image getImage(URL url,String name):返回可以被显示在屏幕上的Image对象的引用,即将URL地址中,文件名为name的文件加载的内存,并返回该内存的首地址。

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类已经实现了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(this):获取被加载的图像的宽。 获取图像的属性: img.getHeight(this):获取被加载的图像的高。 img.getWidth(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播放动画 动画是一种错觉,运动的错觉是通过快速显示一组图片造成的,而这些图片在内容上只有微小的变化。

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对象。