如何设计新图形以添加到JFrame表单? 我试图设计一个非常基本的使用NETBeaS 7.3的JFrice表单,它基本上是由一个中间带有白线的黑匣子组成,它与飞机的滚动程度成比例地旋转。然后需要将其放入JFrame表单中,以创建虚拟驾驶舱用户界面。我是一个新手程序员,对Java库的了解非常有限,因此非常感谢您的帮助

如何设计新图形以添加到JFrame表单? 我试图设计一个非常基本的使用NETBeaS 7.3的JFrice表单,它基本上是由一个中间带有白线的黑匣子组成,它与飞机的滚动程度成比例地旋转。然后需要将其放入JFrame表单中,以创建虚拟驾驶舱用户界面。我是一个新手程序员,对Java库的了解非常有限,因此非常感谢您的帮助,java,swing,jframe,paint,Java,Swing,Jframe,Paint,到目前为止,我已经创建了以下类: public class AttitudeIndicator extends JPanel { private Graphics attIndBackground; private Graphics attIndLine; private int aILStartX; private int aILStartY; private int aILEndX; private int aILEndY; public AttitudeIndicator

到目前为止,我已经创建了以下类:

public class AttitudeIndicator extends JPanel {
private Graphics attIndBackground;
private Graphics attIndLine;
private int aILStartX;
private int aILStartY;
private int aILEndX;
private int aILEndY;
        
public AttitudeIndicator(int a,int b,int c,int d){
    aILStartX = a;
    aILStartY = b;
    aILEndX = c;
    aILEndY = d;
}

public void createAttitudeIndicator(){
    attIndBackground.setColor(Color.BLACK);
    attIndBackground.fillRect(0, 0, 200, 150);
    attIndBackground.setColor(Color.RED);
    attIndBackground.drawLine(0,75,200,75);
    
    attIndLine.setColor(Color.WHITE);
    attIndLine.drawLine(aILStartX,aILStartY,aILEndX,aILEndY);
}
}

我们的想法是,参数a,b,c和d会改变,因此会随着俯仰和滚动的程度而改变直线,但我还没有达到这一点。然后我将其放入主类中,尝试创建它:

public static void main(String[] args) {
    
    JFrame f = new JFrame("Title");
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    AttitudeIndicator a = new AttitudeIndicator(50,50,150,75);
    a.createAttitudeIndicator();
    f.add(a);
    f.setSize(500,400);
    f.setVisible(true);
}
}


当我试着运行它时,我得到了一个空指针异常。有什么想法吗?

我想这可能会对你有所帮助。NetBeans有一个很棒的GUI,可以帮助您为程序制作GUI

您是否研究过如何绘制基本形状(矩形)?你能告诉我们到目前为止你试过什么吗?基本上,这可以通过数学(计算出给定角度的X和Y坐标)和基本绘图来完成。我编辑了这个问题,试图让我的尝试更加清晰