Java Graphics SetColor 给出 NullPointerException
Java Graphics SetColor gives NullPointerException
我是 java 图形的新手,对我的 setSolor 抛出空指针的原因感到困惑。尝试做这样简单的事情:
public void drawEllipse(int x, int y, Color color){
Graphics g = null;
Graphics2D g2 = (Graphics2D) g;
g2.setColor(color);
Ellipse2D.Double ellipse = new Ellipse2D.Double(x, y,1,1);
g2.draw(ellipse);
}
嗯,问题是你用 null
初始化 g
,因此 g2
也是 null
,这会导致异常
编辑:
如果你想用 AWT 绘制一些东西,你应该覆盖 paint
方法。在那里你会得到一个图形对象。或者您在容器上调用 getGraphics
,这也会为您提供一个图形对象。
但我认为第一个变体是一般使用的变体
我是 java 图形的新手,对我的 setSolor 抛出空指针的原因感到困惑。尝试做这样简单的事情:
public void drawEllipse(int x, int y, Color color){
Graphics g = null;
Graphics2D g2 = (Graphics2D) g;
g2.setColor(color);
Ellipse2D.Double ellipse = new Ellipse2D.Double(x, y,1,1);
g2.draw(ellipse);
}
嗯,问题是你用 null
初始化 g
,因此 g2
也是 null
,这会导致异常
编辑:
如果你想用 AWT 绘制一些东西,你应该覆盖 paint
方法。在那里你会得到一个图形对象。或者您在容器上调用 getGraphics
,这也会为您提供一个图形对象。
但我认为第一个变体是一般使用的变体