JAVA AWT學習筆記(一)

本文档介绍了Java AWT中的Graphics类的主要功能,包括如何设置颜色、字体及获取字体度量等。同时列举了与Graphics相关的JDK方法,帮助开发者更好地理解如何在Java应用程序中进行图形绘制。

近來學習Java AWT圖形開發。

每个Graphics中都保持了下面的图形属性:
  ·用来绘制和填充形状的颜色。
  ·用来描述文本的字体。
  ·剪贴矩形。
  ·绘制模式(XOR或Paint)。
  ·用于显示和剪贴坐标的平移原点。
  表3-1列出的JDK方法都传递一个对Graphics的引用。注意表3-1忽略了java.awt.peer方法。

        表3-1 传递一个对Graphics的引用的JDK方法
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   软件包     类         方 法
  ─────────────────────────────────
  java.awt   Canvas          paint(Graphics g)
         Component     paint(Graphics g)
         Component     paintAll(Graphics g)
         Component     print(Graphics g)
         Component     printAll(Graphics g)
         Component     update(Graphics g)
         Container        paint(Graphics g)
         Container        paintComponents(Graphics g)
         Container        print(Graphics g)
         Container        printComponents(Graphics g)
         ScrollPane      printComponents(Graphics g)
  java.beans  Property_Enditor        paintValue(Graphics g,Rectangle r)
         Property_EnditorSupport paintValue(Graphics g,Rectangle r)
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  在java.awt.package软件包中,几乎所有的方法都传递一个对Graphics的引用。此外,我们还要注意用来绘制或打印AWT构件的一些方法。
  在表3-2中,列出了那些返回Graphics引用的方法。在该表中最常使用的方法是Component.getGraphics(),它返回和java.awt.Component相关的Graphics引用。注意表3-2同样忽略了java.awt.peer方法。

         表3-2 返回Graphics 引用的JDK方法
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   软件包              方 法
  ─────────────────────────────────
  java.awt  Component     getGraphics()
        Image       getGraphics()
        PaintJob      getGraphics()
        Graphics      create()
        Graphics      create(int x,int y,int w,int h)
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  图像和打印工作也提供了一个getGraphics方法。通过在一个画面外的缓冲区中显示,Image.getGraphics()经常用在双缓冲中——请参见6.10节“双缓冲入门”中的内容。
  当调用create()时,Graphics.create()复制Graphics。在create()中使用了四个参数来设置原点和剪贴矩形,作为新创建的副本。参数x和y是用来设置原点的。剪贴矩形是Graphics当前剪贴矩形和由传递给create()的参数所定义的矩形的交集。 

Graphics参数

  Graphics类履行两个主要的职责:
  ·设置和获取图形参数。
  ·在输出设备中执行图形操作。

顏色:

·void setColoer(Color color)
·Color getColor()


字体:

·void setFont(Font f)
·Font getFont()


字体度量:

由java.awt.FontMetrics类表示,在该类中,提供了一些关于字体的详细信息,例如字体的高度、倾斜度、行间距等。在Graphics类中,提供两种方法返回对FontMetrics的引用。这两种方法如下:
·FontMetrics getFontMetrics()
·FontMetrics getFontMetrics(Font f)

方法中的无参数方案(第一种方法)返回的字体度量,和Graphics当前的字体结合在一起。第二种方法返回的字体尺度和指定的字体结合在一起。尽管是非镶嵌方法,你同样可以通过设置特殊字体来间接地指定字体尺度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值