我正在学习使用java.swing库.我正在尝试创建一个非常简单的计算器布局.我添加了addNumbers方法.我试图在计算器中显示按钮,我已经用于loops.buttons没有出现我正在获得nullpointerexception.
import java.awt.*;
import javax.swing.*;
public class Calculator extends JFrame{
/**
* @param args
*/
//dEFINE WIDTH AND HEIGHT
private static final int WIDTH = 400;
private static final int HEIGHT = 600;
//Values for buttons having numbers
private JButton[] numButton;
public static void main(String[] args) {
// TODO Auto-generated method stub
Calculator myCalculator = new Calculator();
}
public Calculator(){
setTitle("Simple Calculator");
setSize(WIDTH,HEIGHT);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container Pane = getContentPane();
Pane.setLayout(new GridLayout(3,3));
//Add numbers to screen now
addNumbers(Pane);
}
//Function to add numbers on screen
public void addNumbers(Container P){
for(int i = 1; i <= 9; i++){
numButton[i] = new JButton(String.valueOf(i));
P.add(numButton[i]);
}
}
}
Run Code Online (Sandbox Code Playgroud)
您需要初始化您的数组:
private JButton[] numButton = new JButton[10];
Run Code Online (Sandbox Code Playgroud)
这里的10允许您的阵列中有10个空格.