Java程序设计-补充-Applet.ppt_第1页
Java程序设计-补充-Applet.ppt_第2页
Java程序设计-补充-Applet.ppt_第3页
Java程序设计-补充-Applet.ppt_第4页
Java程序设计-补充-Applet.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

Java程序设计,补充:Applet及应用,学习目标,掌握Applet的创建和执行 熟悉Applet类及方法 熟悉Applet在绘图、图像处理、声音和动画处理方面的应用,Java程序的两种基本形式 Java Application(应用程序),可独立运行 Java Applet(小程序),嵌入Web页在浏览器中运行 Applet小程序 嵌入在HTML文件中 从WWW服务器下载到本地WWW浏览器 由支持Java的Internet浏览器运行,Applet概述,主类必须作为Applet类的子类,格式如下: 不是完整独立的程序,而是嵌入在HTML文件中 利用浏览器或appletviewer所提供的图形用户界面 显示运行,Applet的特点,public class 类名 extends Applet ,Applet特点,import java.applet.Applet; import java.awt.Graphics; public class Exam extends Applet String str; public void init() str = “Here is an Applet”; public void paint(Graphics g) g.drawString(str, 100, 100); /在(100,100)处显示 ,Applet概述,实现过程: Applet小程序经过编辑、编译,得到字节码文件 C:javac Exam.java 嵌入到HTML文件中,保存为Exam.html(文件名没有限制) 运行: 用浏览器(含JVM)打开Exam.html文件 或C: appletviewer Exam.html,Applet类的继承关系,init()方法 完成初始化操作,如创建对象、设置参数、加载图形 在Applet程序第一次加载时调用,仅执行一次 start()方法 启动Applet主线程运行 初始化后和重启时被调用(reload或返回) paint(Graphics g)方法 将结果输出/绘制到界面上 被自动调用(启动后/窗口改变/repaint()调用) stop()方法 暂停Applet程序执行,用于结束一般资源的操作 destroy()方法 终止Applet程序执行,释放所占用的资源和关闭连接,Applet类的主要方法,Applet类的主要方法,import java.applet.Applet; import java.awt.*; public class Exam extends Applet public void init( ) /初始化Applet程序 public void start( ) /启动Applet线程 public void paint(Graphics g) /绘制输出显示信息 public void stop( ) /暂停线程 public void destroy( ) /释放系统资源,结束线程 ,Applet类的主要方法,Applet的生命周期,HTML文件,超文本标记语言(HTML) 和 开始和结束的标记 和 浏览器窗口标题内容的标记 和 浏览器窗口中显示内容的标记 和 Applet程序的标记,Applet标记, 参数传递: value= 如:,在Applet程序中,读取参数值方法: String getParameter(“参数名”),String类型,Applet示例,/使用HTML文件传递参数,显示一个红色字符串 import java.applet.Applet; import java.awt.*; public class Exam extends Applet String str; int x, y, h; Font fnt; public void init() str = getParameter(“string”); h = Integer.parseInt(getParameter(“size”); x = Integer.parseInt(getParameter(“x1”); y = Integer.parseInt(getParameter(“y1”); fnt = new Font(“TimesRoman”, Font.BOLD, h); public void paint(Graphics g) g.setColor(Color.red); g.setFont(fnt); g.drawString(str, x, y); ,Applet示例,/HTML文件中指定传递的参数 ,应用:图形绘制、图像处理、声音处理、动画特效 相关类:java.awt.* (抽象窗口工具) 与显示相关方法: paint(Graphics g) :Applet程序首次装载,窗口放大、缩小、刷新时都要调用 update(Graphics g):用于更新图形 repaint():用于重绘图形,Applet的应用,设置字体 java.awt.Font类 设置文本的字体(包括字型和字号) 构造方法 public Font(String name, int style, int size) 设置颜色 java.awt.Color类 控制颜色,Color类已包含13种颜色常量 构造方法 public Color(int r, int g, int b) public Color(float r1, float g1, float b1) 常用方法:setColor、getColor、getRed,Applet的应用-绘制,绘制文本 相关类:Graphics 绘制字符串 public void drawString(String s, int x, int y) 绘制字符 public void drawChars(char c, int offset, int number, int x, int y) 绘制字节 public void drawBytes(byte b, int offset, int number, int x, int y),绘制文本,绘制文本,import java.applet.Applet; import java.awt.*; public class Exam extends Applet Font font1, font2, font3; public void init() font1 = new Font(“Serif”, Font.BOLD, 20); font2 = new Font(“Monospaced”, Font.BOLD+Font.ITALIC, 24); font3 = new Font(“SansSerif”, Font.PLAIN, 16); public void paint(Graphics g) g.setFont(font1); g.drawString(“Serif 20 point BOLD”, 30, 20); g.setFont(font2); g.drawString(“Monospaced 24 point BOLD + ITALIC”, 30, 80); g.setFont(font3); g.drawString(“SansSerif 16 point PLAIN”, 30, 50); int size = font2.getSize(); int style = font1.getStyle(); String name = font2.getName(); String str = name + “ “ + style + “ “ + size; g.drawString(str, 30, 110); ,绘制文本,public class Exam extends Applet Font font1 = new Font(“TimesRoman”, Font.ITALIC, 25); Font font2 = new Font(“Braggadcoio”, Font.BOLD, 40); public void paint(Graphics g) String str = “I love Beijing!”; Color mycolor = new Color(192, 64, 200); g.setFont(font1); g.setColor(mycolor); g.drawString(str, 30, 40); Color darker = mycolor.darker(); g.setColor(darker); g.drawString(str, 50, 80); Color brighter = mycolor.brighter(); g.setColor(brighter); g.drawString(str, 70, 120); g.setFont(font2); g.setColor(Color.red); g.drawString(str, 30, 170); g.setColor(Color.white); g.drawString(str, 32, 169); ,绘制几何图形 画直线 void drawLine(int x1, int y1, int x2, int y2) 画矩形 void drawRect(int x, int y, int width, int height) /空心 void fillRect(int x, int y, int width, int height) /实心 void clearRect(int x, int y, int width, int height) /清除 void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) void draw3DRect(int x, int y, int width, int height,boolean b) void fill3DRect(int x, int y, int width, int height, boolean b),绘制图形,g.drawRoundRect(10,10,100,60,40,20);,g.fillRoundRect(10,10,100,100,100,100),画圆弧和椭圆 void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle) void drawOval(int x, int y, int width, int height) void fillOval(int x, int y, int width, int height) 参数说明: x,y:矩形左上角点坐标 width,height:外接矩形宽和高 startAngle:起始角度 arcAngle:转动角度,逆时针取正 示例:g.fillArc(10,10,160,80,0,60);,绘制图形,画多边形 public void drawPolygon(int xPoints, int yPoints, int Points) public void fillPolygon(int xPoints, int yPoints, int Points) public void drawPolygon(Polygon p) public void fillPolygon(Polygon p) 注意:第一个顶点与最后一个顶点的坐标相同! Polygon类构造方法: Polygon() Polygon(int xPoints, int yPoints, int numberOfPoints) 示例:,绘制图形,g.setColor(Color.blue); int x=70,40,140,70; int y=10,80,120,10; g.fillPolygon(x,y,4);,绘制图形,import java.awt.Graphics; import java.applet.*; public class AppDemo extends Applet public void paint(Graphics g) g.drawLine(40,30,200,30); g.drawRect(40,50,160,150); g.drawOval(45,55,150,140); g.drawLine(40,220,200,220); g.drawString(“Drawing!“,100,130); ,绘制图形,import java.awt.*; import java.applet.Applet; public class AppDemo extends Applet public void paint(Graphics g) g.setColor(Color.blue); g.fillRect(40,50,160,150); g.setColor(Color.red); g.fillOval(45,55,150,140); g.setColor(Color.orange); g.fillRect(100,90,40,70); ,定义图像对象: java.awt.Image类 图像高度和宽度 int getHeight(ImageObserver observer) int getWidth(ImageObserver observer) 获取图像信息方法 Image getImage(URL url, String name) 显示图像的操作 drawImage(Image img, int x, int y, ImageObserver observer) /图像的缩放显示 drawImage(Image img, int x, int y, int width, int height, ImageObserver observer),Applet的应用-演示图像,参数:类Image对象,左上角的坐标,图像显示尺寸,图形显示对象,url:图像文件所在的URL地址 name:图像文件名,可以是.gif或.jpg,演示图像,import java.applet.Applet; import java.awt.*; public class Exam extends Applet public void paint(Graphics g) Image pic; pic = getImage(getDocumentBase(), “edonkey.jpg”); int x0 = 10, y0 = 30; int w = pic.getWidth(this); int h = pic.getHeight(this); g.drawImage(pic, x0, y0, w/8, h/8, this); g.drawImage(pic, x0+150, y0, w/12, h/12, this); g.drawImage(pic, x0+150, y0+100, w/15, h/15, this); g.drawImage(pic, x0+250, y0+30, (int)(w*0.1), (int)(h*0.2), this); ,getDocumentBase():获取含applet的HTML文件的URL地址 ,此时图像与HTML需放在同一路径,动画 创建Image类的对象数组 drawImage() Thread.sleep()方法 repaint() 播放声音 相关接口:AudioClip(java.applet包中) public void play(URL url) public AudioClip getAudioClip(URL url) public AudioClip getAudioClip(URL url,String name) 播放play() /反复播loop() / 停止stop()方法,动画和声音,import java.applet.Applet; import java.applet.AudioClip; import java.awt.*; public class Exam extends Applet AudioClip mymusic; Image mypic; public void init()

温馨提示

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

评论

0/150

提交评论