Java程序设计 5.1 图形编程之Applet_第1页
Java程序设计 5.1 图形编程之Applet_第2页
Java程序设计 5.1 图形编程之Applet_第3页
Java程序设计 5.1 图形编程之Applet_第4页
Java程序设计 5.1 图形编程之Applet_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第5章 图形编程之AppletApplet简介Applet就是使用Java语言编写的一段代码,在浏览器环境中运行。它与Application的区别主要在于其执行方式的不同。application是从其中的main()方法开始运行的Applet是在浏览器中运行的,必须创建一个HTML文件,通过编写HTML代码告诉浏览器载入何种Applet以及如何运行。所有的Java Applet都必须声明为java. applet.Applet类的子类或javax.swing. JApplet类的子类,才能完成Applet与浏览器的配合。Applet 举例1import java.awt.Graphics;im

2、port java.applet.Applet;public class HelloWorld extends Applet String hw_text ;public void init () hw_text = Hello World; public void paint(Graphics g) g.drawString (hw_text , 25, 25) ;Applet 举例2编译源文件:javac HelloWorld.java 产生字节代码: HelloWorld.class创建一个HTML文件:hello.html 执行Applet用浏览器打开嵌入Applet的HTML文件或者

3、用JDK自带的命令行工具appletviewer打开HTML文件Applet的执行过程浏览器载入要访问的HTML文件的URL地址浏览器装入HTML文件浏览器载入Applet的类字节代码启动Java虚拟机执行AppletApplet的安全性JVM为Applet提供良好运行的“沙箱”机制,一旦程序试图离开沙箱就会被禁止。浏览器禁止Applet执行下列操作:不能调用其它的应用程序执行不能进行文件I/O操作不能调用本机代码不能与Applet所在的主机之外的其它机器进行连接Applet的生命周期转换关系(重点)Applet中的主要方法1init()在Applet创建时被虚拟机自动调用,用来完成数据的初始

4、化。并非每次打开包含Applet的浏览器窗口时都要调用init( )方法,只有第一次这样做。start()init()方法被调用之后,接着调用start()方法;每次Applet被激活时,都会调用start()方法。在start()方法中可以开始运行Applet的功能,也可以启动一个或多个线程来完成任务。Applet中的主要方法2stop()方法其被调用时机与start()方法相反,每次Applet由活动状态变为不活动状态时,都会自动调用stop()方法。 public void stop( ) musicClip.stop( );/ 停止播放音乐 destroy()方法Applet销毁时由虚

5、拟机自动调用的方法,用来完成所有占用资源的释放。Applet的其它方法getDocumentBase()返回该Applet所在的HTML文件的URL基地址。getCodeBase()返回该Applet字节码所在的URL基地址。getImage(URL base, String target)获取一个图像资源对象。getAudioClip(URL base, String target)获取一个声音资源对象。getParameter(String name)获取指定参数的值。Applet方法举例 import java.awt.*; import java.applet.Applet; publ

6、ic class HwImage extends Applet Image duke; public void init() duke = getImage(getDocumentBase(),graphics/surferDuke.gif); public void paint(Graphics g) g.drawImage(duke, 25, 25, this); Applet的显示paint(Graphics)用来完成图形化组件的显示,当组件的显示区域发生改变时,会自动调用该方法完成图形的更新,它只修改图形的被改变区域。例如,当applet被其他页面遮挡,改变浏览器窗口的大小,paint

7、()方法都会被自动调用 update(Graphics)方法缺省情况下,该方法先要对整个显示区域的背景进行刷新,然后再调用paint()方法。repaint()方法 在程序中调用该方法通知系统要更新显示,实际上将触发对update()方法的调用。paint()、repaint()、update()关系Graphics类(重点)Graphics类是AWT用于画图的类,它可支持两种绘图: 基本绘图,画线、矩形、画圆、输出文字等; 画图像、动画。drawString():输出文字drawLine():画线drawRect():矩形DrawOval():画圆drawImage():画图像Graphic

8、s类 绘图函数g.drawString (hw_text , 25, 25) ;g.setColor(Color.blue);g.drawLine(25, 50, 125, 50); g.setColor(Color.red);g.drawRect(30, 50, 130, 50);g.setColor(Color.green);g.drawRoundRect(40, 60, 130, 50, 20, 20);g.setColor(Color.yellow);g.drawOval(25, 25, 30, 30);Graphics类 绘制文本使用Graphics类绘制文本字符串,也是最常用的方法

9、,可以使用drawString()方法在程序指定的位置显示指定的文本信息。语法格式为:str:将要绘制的文本信息。x:水平坐标。y:垂直坐标。例如Applet程序在x,y坐标分别为20像素和10像素的位置绘制文本内容“新年快乐”,可以使用如下代码:Graphics g = getGraphics();String message=新年快乐;g.drawString(message, 20, 10);drawString(String str, int x, int y)Graphics类 绘制图片绘制图片,就是在Applet容器中显示一个事先准备好的图片资源。绘制图片由drawImage()方

10、法实现,该方法有多种重载,它们可以指定绘制图片的位置和大小。drawImage 方法:img:该参数是要绘制的图片对象,如果该参数为null,那么该方法不做任何操作。x:绘制图片的x坐标。y:绘制图片的y坐标。observer:绘制图片需要通知的对象,一般设置为Applet本身即可。drawImage(Image img, int x, int y, ImageObserver observer)在Applet程序中绘制一幅图片,图片的起始x、y坐标分别是x=20,y=10。可以使用如下代码:其中最后一条语句中的“this”关键字是Applet本身。drawImage()方法的重载,在成功绘制图片之后都会返回布尔值true,否则返回false

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论