java.lang.Object
java.awt.Graphics
javax.swing.DebugGraphics
支持图形调试的Graphics子类。覆盖了大多数Graphics的方法。DebugGraphics对象很少手动创建。当使用setDebugGraphicsOptions()方法更改JComponent的debugGraphicsOptions时,通常会自动创建DebugGraphics对象。
注意:您必须关闭双缓冲才能使用DebugGraphics:RepaintManager repaintManager = RepaintManager.currentManager(component); repaintManager.setDoubleBufferingEnabled(false);
- 自 JDK 版本:
- 1.2
- 另请参阅:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
在单独的Frame
中显示缓冲操作。static final int
闪烁图形操作。static final int
记录图形操作。static final int
不调试图形操作。 -
Constructor Summary
ConstructorDescription构造一个支持减速绘图的新调试图形上下文。DebugGraphics
(Graphics graphics) 从现有支持减速绘图的图形上下文构造调试图形上下文。DebugGraphics
(Graphics graphics, JComponent component) 从现有支持减速绘图的图形上下文为指定组件减速绘图。 -
Method Summary
Modifier and TypeMethodDescriptionvoid
clearRect
(int x, int y, int width, int height) 覆盖Graphics.clearRect
。void
clipRect
(int x, int y, int width, int height) 覆盖Graphics.clipRect
。void
copyArea
(int x, int y, int width, int height, int destX, int destY) 覆盖Graphics.copyArea
。create()
覆盖Graphics.create
以返回一个DebugGraphics对象。create
(int x, int y, int width, int height) 覆盖Graphics.create
以返回一个DebugGraphics对象。void
dispose()
覆盖Graphics.dispose
。void
draw3DRect
(int x, int y, int width, int height, boolean raised) 覆盖Graphics.draw3DRect
。void
drawArc
(int x, int y, int width, int height, int startAngle, int arcAngle) 覆盖Graphics.drawArc
。void
drawBytes
(byte[] data, int offset, int length, int x, int y) 覆盖Graphics.drawBytes
。void
drawChars
(char[] data, int offset, int length, int x, int y) 覆盖Graphics.drawChars
。boolean
drawImage
(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage
。boolean
drawImage
(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer) 覆盖Graphics.drawImage
。boolean
drawImage
(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage
。boolean
drawImage
(Image img, int x, int y, int width, int height, ImageObserver observer) 覆盖Graphics.drawImage
。boolean
drawImage
(Image img, int x, int y, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage
。boolean
drawImage
(Image img, int x, int y, ImageObserver observer) 覆盖Graphics.drawImage
。void
drawLine
(int x1, int y1, int x2, int y2) 覆盖Graphics.drawLine
。void
drawOval
(int x, int y, int width, int height) 覆盖Graphics.drawOval
。void
drawPolygon
(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.drawPolygon
。void
drawPolyline
(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.drawPolyline
。void
drawRect
(int x, int y, int width, int height) 覆盖Graphics.drawRect
。void
drawRoundRect
(int x, int y, int width, int height, int arcWidth, int arcHeight) 覆盖Graphics.drawRoundRect
。void
drawString
(String aString, int x, int y) 覆盖Graphics.drawString
。void
drawString
(AttributedCharacterIterator iterator, int x, int y) 覆盖Graphics.drawString
。void
fill3DRect
(int x, int y, int width, int height, boolean raised) 覆盖Graphics.fill3DRect
。void
fillArc
(int x, int y, int width, int height, int startAngle, int arcAngle) 覆盖Graphics.fillArc
。void
fillOval
(int x, int y, int width, int height) 覆盖Graphics.fillOval
。void
fillPolygon
(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.fillPolygon
。void
fillRect
(int x, int y, int width, int height) 覆盖Graphics.fillRect
。void
fillRoundRect
(int x, int y, int width, int height, int arcWidth, int arcHeight) 覆盖Graphics.fillRoundRect
。static Color
返回用于闪烁绘图操作的颜色。static int
返回绘图操作将闪烁的次数。static int
返回绘图操作闪烁的时间延迟。getClip()
覆盖Graphics.getClip
。覆盖Graphics.getClipBounds
。getColor()
返回用于文本绘图操作的颜色。int
返回此DebugGraphics的当前调试选项。getFont()
返回用于文本绘图操作的字体。覆盖Graphics.getFontMetrics
。覆盖Graphics.getFontMetrics
。boolean
返回drawingBuffer值。static PrintStream
返回DebugGraphics记录绘图操作的流。void
setClip
(int x, int y, int width, int height) 覆盖Graphics.setClip
。void
覆盖Graphics.setClip
。void
设置用于绘制和填充线条和形状的颜色。void
setDebugOptions
(int options) 启用/禁用有关每个图形操作的诊断信息。static void
setFlashColor
(Color flashColor) 设置用于闪烁绘图操作的颜色。static void
setFlashCount
(int flashCount) 设置绘图操作将闪烁的次数。static void
setFlashTime
(int flashTime) 设置绘图操作闪烁的时间延迟。void
设置用于文本绘图操作的字体。static void
setLogStream
(PrintStream stream) 设置DebugGraphics记录绘图操作的流。void
覆盖Graphics.setPaintMode
。void
setXORMode
(Color aColor) 覆盖Graphics.setXORMode
。void
translate
(int x, int y) 覆盖Graphics.translate
。Methods declared in class java.awt.Graphics
drawPolygon, fillPolygon, finalize, getClipBounds, getClipRect, hitClip, toString
-
Field Details
-
LOG_OPTION
public static final int LOG_OPTION记录图形操作。- 另请参阅:
-
FLASH_OPTION
public static final int FLASH_OPTION闪烁图形操作。- 另请参阅:
-
BUFFERED_OPTION
public static final int BUFFERED_OPTION在单独的Frame
中显示缓冲操作。- 另请参阅:
-
NONE_OPTION
public static final int NONE_OPTION不调试图形操作。- 另请参阅:
-
-
Constructor Details
-
DebugGraphics
public DebugGraphics()构造一个支持减速绘图的新调试图形上下文。注意:此构造函数不应由应用程序调用,仅供内部使用。直接调用时会创建一个无法使用的实例。
-
DebugGraphics
从现有图形上下文构造一个减速绘图的调试图形上下文,用于指定的组件。- 参数:
-
graphics
- 要减速的图形上下文 -
component
- 要缓慢绘制的JComponent
-
DebugGraphics
从现有支持减速绘图的图形上下文构造调试图形上下文。- 参数:
-
graphics
- 要减速的图形上下文
-
-
Method Details
-
create
覆盖Graphics.create
以返回一个DebugGraphics对象。 -
create
覆盖Graphics.create
以返回一个DebugGraphics对象。 -
setFlashColor
设置用于闪烁绘图操作的颜色。- 参数:
-
flashColor
- 用于闪烁绘图操作的颜色
-
flashColor
返回用于闪烁绘图操作的颜色。- 返回:
- 用于闪烁绘图操作的颜色
- 另请参阅:
-
setFlashTime
public static void setFlashTime(int flashTime) 设置绘图操作闪烁的时间延迟。- 参数:
-
flashTime
- 绘图操作闪烁的时间延迟
-
flashTime
public static int flashTime()返回绘图操作闪烁的时间延迟。- 返回:
- 绘图操作闪烁的时间延迟
- 另请参阅:
-
setFlashCount
public static void setFlashCount(int flashCount) 设置绘图操作将闪烁的次数。- 参数:
-
flashCount
- 绘图操作将闪烁的次数
-
flashCount
public static int flashCount()返回绘图操作将闪烁的次数。- 返回:
- 绘图操作将闪烁的次数
- 另请参阅:
-
setLogStream
设置DebugGraphics记录绘图操作的流。- 参数:
-
stream
- DebugGraphics记录绘图操作的流
-
logStream
返回DebugGraphics记录绘图操作的流。- 返回:
- DebugGraphics记录绘图操作的流
- 另请参阅:
-
setFont
设置用于文本绘制操作的字体。 -
getFont
返回用于文本绘制操作的字体。 -
setColor
设置用于绘制和填充线条和形状的颜色。 -
getColor
返回用于文本绘制操作的颜色。 -
getFontMetrics
覆盖Graphics.getFontMetrics
。- 覆盖:
-
getFontMetrics
在类Graphics
- 返回:
- 此图形上下文的当前字体的字体度量。
- 参见:
-
getFontMetrics
覆盖Graphics.getFontMetrics
。- 指定者:
-
getFontMetrics
在类Graphics
- 参数:
-
f
- 指定的字体 - 返回:
- 指定字体的字体度量。
- 参见:
-
translate
public void translate(int x, int y) 覆盖Graphics.translate
。 -
setPaintMode
public void setPaintMode()覆盖Graphics.setPaintMode
。- 指定者:
-
setPaintMode
在类Graphics
-
setXORMode
覆盖Graphics.setXORMode
。- 指定者:
-
setXORMode
在类Graphics
- 参数:
-
aColor
- XOR 替换颜色
-
getClipBounds
覆盖Graphics.getClipBounds
。- 指定者:
-
getClipBounds
在类Graphics
- 返回:
-
当前剪切区域的边界矩形,如果未设置剪切,则返回
null
。 - 参见:
-
clipRect
public void clipRect(int x, int y, int width, int height) 覆盖Graphics.clipRect
。 -
setClip
public void setClip(int x, int y, int width, int height) 覆盖Graphics.setClip
。 -
getClip
覆盖Graphics.getClip
。 -
setClip
覆盖Graphics.setClip
。 -
drawRect
public void drawRect(int x, int y, int width, int height) 覆盖Graphics.drawRect
。 -
fillRect
public void fillRect(int x, int y, int width, int height) 覆盖Graphics.fillRect
。 -
clearRect
public void clearRect(int x, int y, int width, int height) 覆盖Graphics.clearRect
。 -
drawRoundRect
public void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) 覆盖Graphics.drawRoundRect
。- 指定者:
-
drawRoundRect
在类Graphics
中 - 参数:
-
x
- 要绘制的矩形的x坐标。 -
y
- 要绘制的矩形的y坐标。 -
width
- 要绘制的矩形的宽度。 -
height
- 要绘制的矩形的高度。 -
arcWidth
- 四个角处的弧的水平直径。 -
arcHeight
- 四个角处的弧的垂直直径。 - 参见:
-
fillRoundRect
public void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) 覆盖Graphics.fillRoundRect
。- 指定者:
-
fillRoundRect
在类Graphics
中 - 参数:
-
x
- 要填充的矩形的x坐标。 -
y
- 要填充的矩形的y坐标。 -
width
- 要填充的矩形的宽度。 -
height
- 要填充的矩形的高度。 -
arcWidth
- 四个角处的弧的水平直径。 -
arcHeight
- 四个角处的弧的垂直直径。 - 参见:
-
drawLine
public void drawLine(int x1, int y1, int x2, int y2) 覆盖Graphics.drawLine
。 -
draw3DRect
public void draw3DRect(int x, int y, int width, int height, boolean raised) 覆盖Graphics.draw3DRect
。- 覆盖:
-
draw3DRect
在类Graphics
中 - 参数:
-
x
- 要绘制的矩形的x坐标。 -
y
- 要绘制的矩形的y坐标。 -
width
- 要绘制的矩形的宽度。 -
height
- 要绘制的矩形的高度。 -
raised
- 一个布尔值,确定矩形是凸起还是凹陷。 - 参见:
-
fill3DRect
public void fill3DRect(int x, int y, int width, int height, boolean raised) 覆盖Graphics.fill3DRect
。- 覆盖:
-
fill3DRect
在类Graphics
中 - 参数:
-
x
- 要填充的矩形的x坐标。 -
y
- 要填充的矩形的y坐标。 -
width
- 要填充的矩形的宽度。 -
height
- 要填充的矩形的高度。 -
raised
- 一个布尔值,确定矩形是凸起还是凹陷。 - 参见:
-
drawOval
public void drawOval(int x, int y, int width, int height) 覆盖Graphics.drawOval
。 -
fillOval
public void fillOval(int x, int y, int width, int height) 覆盖Graphics.fillOval
。 -
drawArc
public void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) 覆盖Graphics.drawArc
。 -
fillArc
public void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle) 覆盖Graphics.fillArc
。 -
drawPolyline
public void drawPolyline(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.drawPolyline
。- 指定者:
-
drawPolyline
在类Graphics
- 参数:
-
xPoints
- 一个包含x点的数组 -
yPoints
- 一个包含y点的数组 -
nPoints
- 点的总数 - 参见:
-
drawPolygon
public void drawPolygon(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.drawPolygon
。- 指定者:
-
drawPolygon
在类Graphics
- 参数:
-
xPoints
- 一个包含x
坐标的数组。 -
yPoints
- 一个包含y
坐标的数组。 -
nPoints
- 点的总数。 - 参见:
-
fillPolygon
public void fillPolygon(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.fillPolygon
。- 指定者:
-
fillPolygon
在类Graphics
- 参数:
-
xPoints
- 一个包含x
坐标的数组。 -
yPoints
- 一个包含y
坐标的数组。 -
nPoints
- 点的总数。 - 参见:
-
drawString
覆盖Graphics.drawString
。- 指定者:
-
drawString
在类Graphics
- 参数:
-
aString
- 要绘制的字符串。 -
x
- x坐标。 -
y
- y坐标。 - 参见:
-
drawString
覆盖Graphics.drawString
。- 指定者:
-
drawString
在类Graphics
- 参数:
-
iterator
- 要绘制其文本的迭代器 -
x
- x坐标。 -
y
- y坐标。 - 参见:
-
drawBytes
public void drawBytes(byte[] data, int offset, int length, int x, int y) 覆盖Graphics.drawBytes
。 -
drawChars
public void drawChars(char[] data, int offset, int length, int x, int y) 覆盖Graphics.drawChars
。 -
drawImage
覆盖Graphics.drawImage
。 -
drawImage
覆盖Graphics.drawImage
。 -
drawImage
覆盖Graphics.drawImage
。 -
drawImage
public boolean drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage
。 -
drawImage
public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer) 覆盖Graphics.drawImage
。- 指定者:
-
drawImage
在类Graphics
- 参数:
-
img
- 要绘制的指定图像。如果img
为null,则此方法不执行任何操作。 -
dx1
- 目标矩形的第一个角的x坐标。 -
dy1
- 目标矩形的第一个角的y坐标。 -
dx2
- 目标矩形的第二个角的x坐标。 -
dy2
- 目标矩形的第二个角的y坐标。 -
sx1
- 源矩形的第一个角的x坐标。 -
sy1
- 源矩形的第一个角的y坐标。 -
sx2
- 源矩形的第二个角的x坐标。 -
sy2
- 源矩形的第二个角的y坐标。 -
observer
- 作为图像缩放和转换时通知更多的对象。 - 返回:
-
如果图像像素仍在更改,则返回
false
; 否则返回true
。 - 参见:
-
drawImage
public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage
。- 指定者:
-
drawImage
在类Graphics
- 参数:
-
img
- 要绘制的指定图像。如果img
为null,则此方法不执行任何操作。 -
dx1
- 目标矩形的第一个角的x坐标。 -
dy1
- 目标矩形的第一个角的y坐标。 -
dx2
- 目标矩形的第二个角的x坐标。 -
dy2
- 目标矩形的第二个角的y坐标。 -
sx1
- 源矩形的第一个角的x坐标。 -
sy1
- 源矩形的第一个角的y坐标。 -
sx2
- 源矩形的第二个角的x坐标。 -
sy2
- 源矩形的第二个角的y坐标。 -
bgcolor
- 在图像的非透明部分下绘制的背景颜色。 -
observer
- 作为图像缩放和转换时通知更多的对象。 - 返回:
-
如果图像像素仍在更改,则返回
false
; 否则返回true
。 - 参见:
-
copyArea
public void copyArea(int x, int y, int width, int height, int destX, int destY) 覆盖Graphics.copyArea
。 -
dispose
public void dispose()覆盖Graphics.dispose
。 -
isDrawingBuffer
public boolean isDrawingBuffer()返回绘图缓冲区的值。- 返回:
- 如果此对象正在从缓冲区绘制,则返回true
-
setDebugOptions
public void setDebugOptions(int options) 启用/禁用有关每个图形操作的诊断信息。 options的值指示如何显示此信息。 LOG_OPTION会导致打印文本消息。 FLASH_OPTION会导致绘图闪烁多次。 BUFFERED_OPTION创建一个新的Frame,显示每个操作在离屏缓冲区上。 options的值按位OR到当前值中。要禁用调试,请使用NONE_OPTION。- 参数:
-
options
- 指示如何显示诊断信息
-
getDebugOptions
public int getDebugOptions()返回此DebugGraphics的当前调试选项。- 返回:
- 此DebugGraphics的当前调试选项
- 参见:
-