Module java.desktop

Class BasicGraphicsUtils

java.lang.Object
javax.swing.plaf.basic.BasicGraphicsUtils

public class BasicGraphicsUtils extends Object
便捷的工具类。
  • Constructor Details

    • BasicGraphicsUtils

      public BasicGraphicsUtils()
      构造一个BasicGraphicsUtils
  • Method Details

    • drawEtchedRect

      public static void drawEtchedRect(Graphics g, int x, int y, int w, int h, Color shadow, Color darkShadow, Color highlight, Color lightHighlight)
      绘制一个浮雕矩形。
      参数:
      g - Graphics的一个实例
      x - X坐标
      y - Y坐标
      w - 宽度
      h - 高度
      shadow - 阴影颜色
      darkShadow - 深阴影颜色
      highlight - 高亮颜色
      lightHighlight - 亮高亮颜色
    • getEtchedInsets

      public static Insets getEtchedInsets()
      返回由drawEtchedRect()绘制的边框占用的空间量。
      返回:
      浮雕矩形的插入量
    • drawGroove

      public static void drawGroove(Graphics g, int x, int y, int w, int h, Color shadow, Color highlight)
      绘制一个凹槽。
      参数:
      g - Graphics的一个实例
      x - X坐标
      y - Y坐标
      w - 宽度
      h - 高度
      shadow - 阴影颜色
      highlight - 高亮颜色
    • getGrooveInsets

      public static Insets getGrooveInsets()
      返回由drawGroove()绘制的边框占用的空间量。
      返回:
      凹槽边框的插入量
    • drawBezel

      public static void drawBezel(Graphics g, int x, int y, int w, int h, boolean isPressed, boolean isDefault, Color shadow, Color darkShadow, Color highlight, Color lightHighlight)
      绘制一个斜角。
      参数:
      g - Graphics的一个实例
      x - X坐标
      y - Y坐标
      w - 宽度
      h - 高度
      isPressed - 组件是否被按下
      isDefault - 是否默认绘制
      shadow - 阴影颜色
      darkShadow - 深阴影颜色
      highlight - 高亮颜色
      lightHighlight - 亮高亮颜色
    • drawLoweredBezel

      public static void drawLoweredBezel(Graphics g, int x, int y, int w, int h, Color shadow, Color darkShadow, Color highlight, Color lightHighlight)
      绘制一个降低的斜角。
      参数:
      g - Graphics的一个实例
      x - X坐标
      y - Y坐标
      w - 宽度
      h - 高度
      shadow - 阴影颜色
      darkShadow - 深阴影颜色
      highlight - 高亮颜色
      lightHighlight - 亮高亮颜色
    • drawString

      public static void drawString(Graphics g, String text, int underlinedChar, int x, int y)
      使用图形g在位置(x,y)处绘制字符串,就像g.drawString一样。文本中第一个出现的underlineChar将被下划线。匹配算法不区分大小写。
      参数:
      g - Graphics的一个实例
      text - 一个文本
      underlinedChar - 要下划线的字符
      x - X坐标
      y - Y坐标
    • drawStringUnderlineCharAt

      public static void drawStringUnderlineCharAt(Graphics g, String text, int underlinedIndex, int x, int y)
      使用图形g在位置(xy)处绘制字符串,就像g.drawString一样。文本中索引为underlinedIndex的字符将被下划线。如果index超出text的边界(包括< 0),则不会有下划线。
      参数:
      g - 用于绘制的图形
      text - 要绘制的字符串
      underlinedIndex - 要下划线的文本中的字符索引
      x - 要绘制的x坐标
      y - 要绘制的y坐标
      自1.4起:
      1.4
    • drawDashedRect

      public static void drawDashedRect(Graphics g, int x, int y, int width, int height)
      绘制虚线矩形。
      参数:
      g - Graphics的一个实例
      x - X坐标
      y - Y坐标
      width - 矩形的宽度
      height - 矩形的高度
    • getPreferredButtonSize

      public static Dimension getPreferredButtonSize(AbstractButton b, int textIconGap)
      返回按钮的首选大小。
      参数:
      b - AbstractButton的一个实例
      textIconGap - 文本和图标之间的间距
      返回:
      按钮的首选大小
    • drawString

      public static void drawString(JComponent c, Graphics2D g, String string, float x, float y)
      使用提供的组件的文本属性和抗锯齿提示在指定位置绘制给定的字符串。如果字符串为空,则不绘制任何内容。
      参数:
      c - 将显示字符串的组件,可以为null
      g - 图形上下文,不能为空
      string - 要显示的字符串,可以为null
      x - 要绘制文本的x坐标
      y - 要绘制文本的y坐标
      抛出:
      NullPointerException - 如果指定的gnull
      自9起:
      9
    • drawStringUnderlineCharAt

      public static void drawStringUnderlineCharAt(JComponent c, Graphics2D g, String string, int underlinedIndex, float x, float y)
      使用提供的组件查询文本属性和抗锯齿提示,在指定位置绘制给定的字符串并下划线指定的字符。

      参数underlinedIndex指向给定字符串中的一个字符值(Unicode代码单元)。如果在下划线索引处指定的字符值在高代理范围内,并且后面的索引处的字符值在低代理范围内,则下划线对应于这个代理对应的补充字符。

      如果索引为负数或大于字符串长度(index < 0 || index >= string.length()),或者在给定索引处指定的字符值在低代理范围内,则不会有字符被下划线。

      参数:
      c - 将显示字符串的组件,可以为null
      g - 图形上下文,不能为空
      string - 要显示的字符串,可以为null
      underlinedIndex - 要在字符串中下划线的字符索引
      x - 要绘制文本的x坐标
      y - 要绘制文本的y坐标
      抛出:
      NullPointerException - 如果指定的gnull
      自9起:
      9
      参见:
    • getClippedString

      public static String getClippedString(JComponent c, FontMetrics fm, String string, int availTextWidth)
      将传入的字符串剪切到提供的空间。使用提供的组件查询文本属性和抗锯齿提示。如果提供的空间大于字符串宽度,则返回未更改的字符串。
      参数:
      c - 组件,可以为null
      fm - 用于测量字符串宽度的FontMetrics,必须从正确的字体和图形中获取。不能为空。
      string - 要剪切的字符串,可以为null
      availTextWidth - 可以绘制字符串的空间量
      返回:
      适合提供的空间的剪切字符串,如果给定的字符串参数为null或空字符串,则返回空字符串
      抛出:
      NullPointerException - 如果指定的fmnull
      自9起:
      9
      参见:
    • getStringWidth

      public static float getStringWidth(JComponent c, FontMetrics fm, String string)
      返回使用提供的组件的文本属性和抗锯齿提示的传入字符串的宽度。如果传入的字符串为null,则返回零。
      参数:
      c - 组件,可以为null
      fm - 用于测量提前字符串宽度的FontMetrics,必须从正确的字体和图形中获取。不能为空。
      string - 要获取提前宽度的字符串,可以为null
      返回:
      指定字符串的提前宽度,对于null字符串返回零
      抛出:
      NullPointerException - 如果指定的fmnull
      自9起:
      9