资源预览内容
第1页 / 共56页
第2页 / 共56页
第3页 / 共56页
第4页 / 共56页
第5页 / 共56页
第6页 / 共56页
第7页 / 共56页
第8页 / 共56页
第9页 / 共56页
第10页 / 共56页
亲,该文档总共56页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第6章Java Applet,主讲教师:张群哲,6.1 Applet创建与执行,【学习目标】 掌握Applet工作原理; 熟悉Applet生命周期及其方法; 掌握Applet图形界面设计,项目20 Applet工作原理及绘图 演示Applet的生命周期,【项目任务】 编写Java Applet程序演示Applet生命周期的各种状态及调用的相应方法。 用小程序查看器appletviewer查看Applet,通过调整appletviewer窗口大小、最小化、还原、关闭等操作,改变字体颜色,并在后台窗口中显示相应的Applet生命周期。,/AppletLife.java的源代码: import java.applet.Applet; import java.awt.*; import javax.swing.*; public class AppletLife extends Applet public static int colors=10; Font font; public void init() System.out.println(“Now init“); /后台输出 font=new Font(“TimesRoman“,Font.PLAIN,36); /设置字体 public void start() System.out.println(“Now start“); public void stop() System.out.println(“Now stop“); public void destroy() System.out.println(“Now destroy“); public void paint(Graphics g) /随机设置三元色,调整字体颜色 int red=(int)(Math.random()*50); int green=(int)(Math.random()*50); int blue=(int)(Math.random()*256); g.setFont(font); g.setColor(new Color(red+colors*30)%256,(green+colors/3)%256,blue); colors=colors+10; System.out.println(“Now paint“); g.drawString(“hello“,30,30); /在Applet中绘制字符串 ,任务单 识别Web 上部署Java 程序的方法 识别在基于Web 的Java 程序中初始化控件的机制 识别HTML 文件的名和位置 编写应用代码 保存和编译程序 编码HTML 文件 保存HTML 文件 执行程序和检查输出,【相关知识】,任务 1:识别Web 上部署Java 程序的方法 JApplet 类: The javax.swing包包含 JApplet 类,它有 20种以上的方法用来显示 图象、放音频文件、及当用户与applet 交互时做出响应 applet在Web 浏览器中加载的Web 页面上运行 applet的生命周期是用方法:init(), start(), stop(), 及 destroy()实现的,任务 1:识别方法 .(续) 结果: 以前开发的程序是应用而不是applet。为在Web上部署此程序,把其框架转换为applet,任务 2:识别在基于Web 的Java 程序中初始化控件的机制。 init()方法是在applet在第一次装入计算机内存时被调用 start()方法接在init()方法之后被调用和每当applet接收聚焦时被调用 每当applet释放聚焦时,调用stop()方法 destroy()方法在用户移到另一个Web页面时被调用,任务 2:识别机制 .(续) 小应用程序的生命周期:,init,start,stop,destroy,When the applet receives the focus.,A user opens the Web page for the first time.,After init.,When the applet loses its focus.,When the user moves to another Web page.,任务 2:识别机制 .(续) java.awt.Graphics 类 它是是抽象类,表示applet 的显示区域 它用于在applet 的显示区域上画图 提供了一些方法如: drawString(String test, int x, int y) drawLine(int x1, int y1, int x2, int y2) drawRect(int x1, int y1, int width, int height) drawOval(int x1, int y1, int width, int height),任务 2:识别机制 .(续) update()方法 它取Graphics 类对象为参数 当 applet区域要更新时调用 它清除屏幕和调用paint() 方法 paint() 方法 在绘画区域内画applet的所有图形 当applet第一次在屏幕上显示和每当applet接收聚焦时,自动地调用此方法,任务 2:识别机制 .(续) paint() 方法 (续) 通过调用repaint()方法触发 paint 例子 import javax.swing.*; import java.awt.*; public class DisplayApplet extends JApplet public void paint(Graphics g) g.drawString(“This is displayed by the paint method”, 20, 20); ,任务 2:识别机制 .(续) paint() 方法 (续) 输出,任务 2:识别机制 .(续) 结果: init() 是要执行的第一个方法,可用这方法初始化基于Web Java 程序中的控件,任务 3:识别HTML 文件中名和位置 结果: HTML 文件保存为SemesterBatchcodeGroupnameJavaCustomer.html,任务 4:编写应用代码 import javax.swing.*; public class Customer extends JApplet JPanel panelObject; /* Variables for labels and data entry controls */ public void init() panelObject=new JPanel(); getContentPane().add(panelObject); /* Initialise and add the controls to the panel */ ,任务 5:保存和编译程序,任务 6:编写HTML 文件的代码 Applet标签: 在HTML 文档的BODY 标签内写出APPLET 标签 Applet标签的元素: CODE=“.class文件的名” CODEBASE=“.class文件的路径” HEIGHT=“apple的最大高度,以象素为单位” WIDTH=“applet的最大宽度, ,以象素为单位”,任务 6:编写HTML 文件的代码(续) VSPACE=“.applet 与HTML,的其余部分之间的垂直空间,以象素为单位” HSPACE=“.applet 与HTML,的其余部分之间的水平空间,以象素为单位” ALIGN=“.applet与Web页面的其余部分对齐” ALT=“.如果浏览器不支持applets,显示可选的文本“ .APPLET 标签最常用的属性是 CODE, HEIGHT, WIDTH, CODEBASE, 及 ALT,任务 6:编写HTML 文件的代码(续) 代码:,任务 7:.保存HTML 文件 动作: 保存文件为SemesterBatchcodeGroupnameJavaCustomer.html,任务 8:.执行程序 appletviewer 工具: 是一个运行applets的程序的工具,没有运行Web浏览器的开销 动作: .在命令提示处,打入AppletViewer Customer.html,任务 9:.检查输出: 结果: .屏幕类似于前面应用中创建的框架,应是可见的,【应用拓展】,1.应用字体 Font类对象:表示了一种字体显示效果,包括字体、字形、字号等内容。 /设置TimesRoman字体的18号粗体字: Font myFont=new Font(“TimesRoman”,Font.BOLD,18); /将myFont设为Graphics类对象s的字体: s.setFont(myFont);,2.应用颜色 三元色:红(R)、绿(G)、蓝(B),RGB的取值范围为0255 (1)Color类常用的构造方法 public Color(int r,int g,int b) public Color(float r,float g,float b) public Color(int rgb) int类型:r、g、b取值范围是0255 float类型:r、g、b取值范围是0.01.0 int类型的rgb值:按二进制位分配,07位是蓝的含量,815位是绿,1623位是红。 (2)改变Graphics对象的颜色 /设置Graphics对象s为红色: g.setColor(Color.RED); /使用Color常量 g.setColor(new Color(255,0,0); /使用Color对象,3.绘制图形(x,y表示坐标) 写字符串 drawString(String str, int x, int y) drawChars(char data, int offset, int length, int x, int y) drawBytes(byte data, int offset, int length, int x, int y) 画直线 drawLine(int x1, int y1, int x2, int y2) 画矩形 drawRect(int x, int y, int width, int height) 以(x,y)为左上角 fillRect(int x, int y, int width, int height) 填充指定的矩形, drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) arcWidth和arcHeight指定圆角宽高。 fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) 填充指定的圆角矩形,画椭圆 drawOval(int x, int y, int width, int height) 矩形内切椭圆。 fillOval(int x, int y, int width, int height) 填充椭圆 画圆弧 drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) 椭圆中从startAngle角度开始、掠过arcAngle角度的弧线。 fillArc(int x, int y, int width, int height, int startAngle, int arcAngle) 填充椭圆弧。 画多边形 drawPolygon(int
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号