我的代码中的NullPointerException。请问如何解决这个问题?

时间:2015-11-30 13:40:14

标签: java swing nullpointerexception

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Test implements ActionListener{
    static JFrame frm = new JFrame("Calculator");
    static JPanel jp1 = new JPanel(new FlowLayout());
    static JPanel jp2 = new JPanel(new GridLayout(3, 3));
    static JButton []btn = new JButton[9];
    static JTextField txtOut = new JTextField(15);

    static Container cp = frm.getContentPane();

    public static void main(String args[]){
        cp.setLayout(new BorderLayout(0, 10));

        jp1.add(txtOut);
        cp.add(jp1, BorderLayout.NORTH);

        for (int i = 0; i < 9; ++i){
            btn[i].setText("" + (i + 1));
            btn[i].addActionListener((ActionListener)frm);
            jp2.add(btn[i]);
        }
        cp.add(jp2, BorderLayout.CENTER);

        frm.setSize(200, 200);
        frm.setVisible(true);

        frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    public void actionPerformed(ActionEvent e){
        JButton tmp_btn = (JButton) e.getSource();
        // check which button
        for (int i = 0; i < 9; ++i){
            if (tmp_btn == btn[i]){
                txtOut.setText("" + (i + 1));
                break;
            }
        }
    }
}

您好,我正在Java Swing课程学习。

我试着制作一个计算器,

但是当我处理事件监听器时,我遇到了问题!

它是java.lang.NullPointerException。

我猜问题是循环三个语句的主要方法,

因为我试图分别评论它们,

和IDE编译器说话&#34; NullPointerException&#34;在那里...

但我仍然不知道此代码中的错误。

所以,我想问一下,好好解决它,谢谢!!

(抱歉,我的英语很差:( ...

0 个答案:

没有答案