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
FieldsModifier and TypeFieldDescriptionstatic final int在单独的Frame中显示缓冲操作。static final int闪烁图形操作。static final int记录图形操作。static final int不调试图形操作。 -
Constructor Summary
ConstructorsConstructorDescription构造一个支持减速绘图的新调试图形上下文。DebugGraphics(Graphics graphics) 从现有支持减速绘图的图形上下文构造调试图形上下文。DebugGraphics(Graphics graphics, JComponent component) 从现有支持减速绘图的图形上下文为指定组件减速绘图。 -
Method Summary
Modifier and TypeMethodDescriptionvoidclearRect(int x, int y, int width, int height) 覆盖Graphics.clearRect。voidclipRect(int x, int y, int width, int height) 覆盖Graphics.clipRect。voidcopyArea(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对象。voiddispose()覆盖Graphics.dispose。voiddraw3DRect(int x, int y, int width, int height, boolean raised) 覆盖Graphics.draw3DRect。voiddrawArc(int x, int y, int width, int height, int startAngle, int arcAngle) 覆盖Graphics.drawArc。voiddrawBytes(byte[] data, int offset, int length, int x, int y) 覆盖Graphics.drawBytes。voiddrawChars(char[] data, int offset, int length, int x, int y) 覆盖Graphics.drawChars。booleandrawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage。booleandrawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer) 覆盖Graphics.drawImage。booleandrawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage。booleandrawImage(Image img, int x, int y, int width, int height, ImageObserver observer) 覆盖Graphics.drawImage。booleandrawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer) 覆盖Graphics.drawImage。booleandrawImage(Image img, int x, int y, ImageObserver observer) 覆盖Graphics.drawImage。voiddrawLine(int x1, int y1, int x2, int y2) 覆盖Graphics.drawLine。voiddrawOval(int x, int y, int width, int height) 覆盖Graphics.drawOval。voiddrawPolygon(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.drawPolygon。voiddrawPolyline(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.drawPolyline。voiddrawRect(int x, int y, int width, int height) 覆盖Graphics.drawRect。voiddrawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) 覆盖Graphics.drawRoundRect。voiddrawString(String aString, int x, int y) 覆盖Graphics.drawString。voiddrawString(AttributedCharacterIterator iterator, int x, int y) 覆盖Graphics.drawString。voidfill3DRect(int x, int y, int width, int height, boolean raised) 覆盖Graphics.fill3DRect。voidfillArc(int x, int y, int width, int height, int startAngle, int arcAngle) 覆盖Graphics.fillArc。voidfillOval(int x, int y, int width, int height) 覆盖Graphics.fillOval。voidfillPolygon(int[] xPoints, int[] yPoints, int nPoints) 覆盖Graphics.fillPolygon。voidfillRect(int x, int y, int width, int height) 覆盖Graphics.fillRect。voidfillRoundRect(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记录绘图操作的流。voidsetClip(int x, int y, int width, int height) 覆盖Graphics.setClip。void覆盖Graphics.setClip。void设置用于绘制和填充线条和形状的颜色。voidsetDebugOptions(int options) 启用/禁用有关每个图形操作的诊断信息。static voidsetFlashColor(Color flashColor) 设置用于闪烁绘图操作的颜色。static voidsetFlashCount(int flashCount) 设置绘图操作将闪烁的次数。static voidsetFlashTime(int flashTime) 设置绘图操作闪烁的时间延迟。void设置用于文本绘图操作的字体。static voidsetLogStream(PrintStream stream) 设置DebugGraphics记录绘图操作的流。void覆盖Graphics.setPaintMode。voidsetXORMode(Color aColor) 覆盖Graphics.setXORMode。voidtranslate(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的当前调试选项
- 参见:
-