【发布时间】:2017-05-18 15:37:37
【问题描述】:
我正在尝试在 Canvas 中绘制字符串。当我实例化扩展Canvas 的类时发生错误,为什么会得到它?
错误堆栈
at sun.awt.Win32GraphicsConfig.getBounds(Native Method)
at sun.awt.Win32GraphicsConfig.getBounds(Win32GraphicsConfig.java:222)
at java.awt.Window.init(Window.java:505)
at java.awt.Window.<init>(Window.java:537)
at java.awt.Frame.<init>(Frame.java:420)
at javax.swing.JFrame.<init>(JFrame.java:233)
at canvas.Canvas.<init>(Canvas.java:20)
at canvas.Canvas$DrawCanvas.<init>(Canvas.java:35)
at canvas.Canvas$DrawCanvas.<init>(Canvas.java:35)
at canvas.Canvas.<init>(Canvas.java:17)
at canvas.Canvas$DrawCanvas.<init>(Canvas.java:35)
at canvas.Canvas$DrawCanvas.<init>(Canvas.java:35)
at canvas.Canvas.<init>(Canvas.java:17)
at canvas.Canvas$DrawCanvas.<init>(Canvas.java:35)
at canvas.Canvas$DrawCanvas.<init>(Canvas.java:35)
at canvas.Canvas.<init>(Canvas.java:17)`
这是我的代码:
public class Canvas extends JFrame{
DrawCanvas cc = new DrawCanvas();
public Canvas(){
super("Canvas");
setVisible(true);
setSize(100, 100);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
add(cc);
}
public static void main(String[] args) {
Canvas c = new Canvas();
}
private class DrawCanvas extends Canvas{
@Override
public void paint(Graphics g){
g.drawString("String", 10, 10);
}
}
}
【问题讨论】:
-
你为什么要隐藏问题本身?如果您不完全提供堆栈跟踪,我们该如何回答?
-
这里写代码
-
堆栈跟踪在 canvas.Canvas$DrawCanvas.
(Canvas.java:35) 处的 canvas.Canvas$DrawCanvas. (Canvas.java:35) 处继续重复。 Canvas. (Canvas.java:17)`
标签: java canvas netbeans graphics awt