电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Java语言程序设计:第9章 图形用户界面

171页
  • 卖家[上传人]:经***
  • 文档编号:295541692
  • 上传时间:2022-05-20
  • 文档格式:PPT
  • 文档大小:1.23MB
  • / 171 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第第9章章 图形用户界面图形用户界面JAVA语言程序设计1目录目录l9.1 Applet 概述概述l9.2 Applet应用程序接口应用程序接口l9.3 绘图绘图l9.4 Swing基础基础l9.5 Swing的特点和概念的特点和概念l9.6 Swing组件组件l9.7 其它其它Swing特性特性l9.8 本章小结本章小结(说明:本章部分例题出自(说明:本章部分例题出自java_tutorial_sun)29.1 Applet 概述概述lJava Applet一种嵌入HTML文档中的Java程序与Application相比,Applet具有明显的优点lweb浏览器提供了运行Applet所需要的许多功能lApplet是在运行时通过网络从服务器端下载的,因而便于软件的发布和及时更新Applet也有其局限性,l不能在客户机上读写当地文件l也不能连接除它所在的服务器以外的其它机器3l在浏览器中加载一个在浏览器中加载一个Applet,功能是显示一个字符,功能是显示一个字符串串“This is a Java Applet!”import java.awt.Graphics;import javax

      2、.swing.JApplet; public class Ex9_1 extends JApplet public void paint(Graphics g) /重载JApplet类的paint方法 /参数是Graphics类的对象,是由浏览器传递过来的 super.paint(g); /调用其超类JApplet类的paint方法 g.drawString(This is a Java Applet!,25,25); 9.1 Applet概述概述(续续) 例例9_1Applet概述4l在在NetBeans IDE中运行中运行9.1 Applet概述概述(续续) 例例9_1运行结果运行结果Applet概述5l编译编译ex9_1.java产生字节码文件产生字节码文件ex9_1.class。接下来就需。接下来就需要编写一个要编写一个HTML文件文件ex9_1.html来嵌入来嵌入ex9_1.classl将将ex9_1.html文件和文件和Ex9_1.class文件放在同一个目录下。文件放在同一个目录下。现在,在浏览器中打开这个现在,在浏览器中打开这个HTML文件,当浏览器遇到文件,当浏览器

      3、遇到Applet标记时,就会自动载入指定的标记时,就会自动载入指定的class文件,就会实现文件,就会实现在屏幕上绘制一串字符的效果在屏幕上绘制一串字符的效果9.1 Applet概述概述(续续) 例例9_1运行结果运行结果Applet概述69.2 Applet应用程序接口应用程序接口lJApplet类类一个applet程序需要继承javax.swing包中的JApplet类,也可以继承老的AWT组件中的Applet类, JApplet类属于新的Swing组件提供了applet在浏览器中运行需要具备的特定方法l浏览器载入时,要依次运行init、start、paint方法l离开浏览器页面时,执行stopl退出浏览器时,执行destroy 提供了所有这些方法的默认实现,所以我们在编写自己的applet时,就可以不必写出全部方法,只要继承这个JApplet,然后重写特定的方法来增加特殊功能79.2 Applet应用程序接口应用程序接口方法调用时机和用途public void init()当浏览器(即Applet容器)载入某个Applet时,容器会自动创建这个Applet类的一个实例,并调用它的

      4、init方法Applet应用程序接口8public void start()init方法执行结束之后,自动调用这个方法。另外,当浏览器用户在访问另一个网址之后重新返回applet所在的HTML页时,将再次调用start方法public void paint(Graphics g)start方法启动后调用此方法,另外每次需要重绘applet时也将调用该方法。程序通常不直接调用paintpublic void repaint()在响应用户和Applet的交互时经常要用到。通常只是调用,而不重写这个方法。对于轻量级组件,它调用组件的paint方法,对重量级组件它调用组件的update方法,由update调用paintpublic void stop()用户离开Applet所在的HTML页时调用该方法,它执行挂起Applet所需的所有任务,例如停止动画和线程public void destroy()用户关闭浏览器窗口,Applet将从内存中移走的时候调用该方法9.2 Applet应用程序接口应用程序接口(续续)Applet应用程序接口9import javax.swing.*;.import

      5、java.awt.*;public class HelloSwingApplet extends JApplet public void init() JLabel label = new JLabel( You are successfully running a Swing applet!); label.setHorizontalAlignment(JLabel.CENTER); label.setBorder(BorderFactory.createMatteBorder( 1,1,2,2,Color.black); getContentPane().add(label, BorderLayout.CENTER); 9.2 Applet应用程序接口应用程序接口(续续) HelloSwingApplet.javaApplet应用程序接口109.3 绘图绘图l图形环境和图形对象图形环境和图形对象l颜色和字体颜色和字体l使用使用Graphics类绘图类绘图l使用使用Graphics2D类绘图类绘图119.3.1 图形环境和图形对象图形环境和图形对象l坐标坐标GUI组件的左上角坐标默认

      6、为(0,0)从左上角到右下角,水平坐标x和垂直坐标y增加。坐标的单位是象素lGraphics对象对象Graphics对象是专门管理图形环境的。Graphics类是一个抽象类设计一个抽象类Graphics可以给程序员提供一个与平台无关的绘图接口,因而程序员就可以以独立于平台的方式来使用图形。在各个平台上实现的Java系统将创建Graphics类的一个子类,来实现绘图功能,但是这个子类对程序员是透明的,也就是说我们只能看得到Graphics类,却不必关心其实现在执行paint方法时,系统会传递一个指向特定平台的Graphics子类的图形对象g绘图12 9.3.2 颜色和字体颜色和字体lJava中有关颜色的类是中有关颜色的类是Color类,它在类,它在java.awt包中,包中,这个类声明了用于操作这个类声明了用于操作Java程序中颜色的方法和常程序中颜色的方法和常量量名称名称描述描述public final static Color GREENpublic final static Color GREEN常量常量 绿绿色色 public final static Color REDpubl

      7、ic final static Color RED常量常量 红红色色public public Color(intColor(int r,intr,int g,intg,int b) b)通通过过指定指定红红、蓝蓝、绿颜绿颜色分量(色分量(0 0255255),),创创建一种建一种颜颜色色public public intint getRedgetRed()()返回某返回某颜颜色色对对象的象的红红色分量色分量值值(0(0255)255)GraphicsGraphics:public void public void setColor(ColorsetColor(Color c) c)GraphicsGraphics类类的方法,用于的方法,用于设设置置组组件的件的颜颜色色GraphicsGraphics:public Color public Color getColorgetColor()()GraphicsGraphics类类的方法,用于的方法,用于获获得得组组件的件的颜颜色色绘图13 9.3.2 颜色和字体颜色和字体lFont类类有关字体控制,在有关字体控制,在java.awt包中

      8、包中名称名称描述描述public final static public final static intint PLAIN PLAIN一个代表普通字体一个代表普通字体风风格的常量格的常量public final static public final static intint BOLD BOLD一个代表黑体字体一个代表黑体字体风风格的常量格的常量public final static public final static intint ITALIC ITALIC一个代表斜体字体一个代表斜体字体风风格的常量格的常量public public Font(StringFont(String name,intname,int style,intstyle,int size) size)利用指定的字体、利用指定的字体、风风格和大小格和大小创创建一建一个个FontFont对对象象public public intint getStylegetStyle()()返回一个表示当前字体返回一个表示当前字体风风格的整数格的整数值值public Boolean public Boolean isPla

      9、inisPlain()()测试测试一个字体是否是普通字体一个字体是否是普通字体风风格格GraphicsGraphics:public Font public Font getFontgetFont()()获获得当前字体得当前字体GraphicsGraphics:public void public void setFont(FontsetFont(Font f) f)设设置当前字体置当前字体为为f f指定的字体、指定的字体、风风格格和大小和大小绘图149.3.3 使用使用Graphics类绘图类绘图lGraphics类类其对象可以绘制文本、线条、矩形、多边形、椭圆、弧等多种图形名称描述public void drawString(String str, int x, int y)绘制字符串,左上角的坐标是(x,y)public void drawLine(int x1, int y1, int x2, int y2)在(x1,y1)与(x2,y2)两点之间绘制一条线段public void drawRect(int x, int y, int width, int height)用指定

      10、的width和height绘制一个矩形,该矩形的左上角坐标为(x,y)public void fillRect(int x, int y, int width, int height)用指定的width和height绘制一个实心矩形,该矩形的左上角坐标为(x,y)绘图15public void clearRect(int x, int y, int width, int height)用指定的width和height,以当前背景色绘制一个实心矩形。该矩形的左上角坐标为(x,y)public void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)用指定的width和height绘制一个圆角矩形,圆角是一个椭圆的1/4弧,此椭圆由arcWidth、arcHeight确定两轴长。其外切矩形左上角坐标为(x,y)public void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHe

      《Java语言程序设计:第9章 图形用户界面》由会员经***分享,可在线阅读,更多相关《Java语言程序设计:第9章 图形用户界面》请在金锄头文库上搜索。

      点击阅读更多内容
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.