框架和按钮

Frames and Buttons

您好,虽然我确实完成了 java 的基础知识,但我还是很新,但当我尝试在新的 Frame/Panel 上添加按钮时,我总是遇到错误。关心教育我可能是什么问题?

import javax.swing.*;
import java.awt.*;

class MainClass {
    String cont_orders;
    private JFrame frame1;
    private JPanel mainpanel;
    JButton bt1, bt2, bt3, bt4, bt5;
    private JButton btotal = new JButton("Order");
    private JButton clearOr = new JButton("Clear");
    private JTextField pricetotal = new JTextField();
    private JTextField list_of_orders = new JTextField();

public MainClass(){
    gui();
}

private void gui(){
    frame1 = new JFrame("Order");
    frame1.setSize(500,430);
    frame1.setVisible(true);
    frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame1.setResizable(false);

    mainpanel = new JPanel();
    mainpanel.setBackground(Color.BLUE);

    mainpanel.add(bt1);
        bt1 = new JButton("M-Item 1 [Soda]");  
    frame1.add(mainpanel,BorderLayout.CENTER);
}
public static void main (String[]args){
    new MainClass();
}

}

我正在尝试正常编码而不是依赖 NetBeans [JFrame Form/JPanel Form]

中的自动编码

想帮忙吗?

现在无法在 java

中完成此操作
mainpanel.add(bt1);
bt1 = new JButton("M-Item 1 [Soda]");  

转过来。

解释:字段bt1当时是一个持有空对象的变量。 添加了那个对象(值),而不是其他语言中的一些变量地址。

反转它bt1 = new JButton("M-Item 1 [Soda]" mainpanel.add(bt1); 因为如果不是 bt1 的值将是 null 所以你必须先填充它然后使用它。 要么 mainpanel.add(new JButton("..."));