我试着用Graphics类画一条线,然后把它的JFrame对象中:画一条线混合Swing和AWT
import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JLabel;
class Window
{
private JFrame frame;
private Graphics g;
public void Window()
{
frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocation(15, 0);
frame.setSize(600, 200);
frame.setVisible(true);
}
public void DrawCross()
{
g.setColor(Color.BLACK);
g.drawLine(300,0, 200, 0);
frame.paint(g);
}
}
...
run:
Exception in thread "main" java.lang.NullPointerException
at Window.DrawCross(Window.java:33)
at Main.main(main.java:21)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
我在哪里错了以及如何解决我的错误?初始化抽象的Graphics类对象是不可能的。
作为一个抽象类,我想你可以只是扩展它,并初始化自己的图形类。 – 2013-02-10 00:20:33
赖梅斯是正确的。您可能还想查看[执行自定义绘画](http://docs.oracle.com/javase/tutorial/uiswing/painting/)以获取更多信息 – MadProgrammer 2013-02-10 00:24:46