私はJavaを学んでいる新しいCSの学生です。ユーザーが数字を入力して結果を表示するGUIを作成しようとしています。しかし、よくわからないエラーが発生します。Google で検索してみましたが、役に立ちませんでした。どんなコメントでも大歓迎です。ありがとう。
person クラスの Main メソッド
import javax.swing.JFrame;
public class person {
public static void main(String[] args) {
JFrame frame= new guifirst();//line 6
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
ギファーストクラス
import javax.swing.JFrame;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JButton;
import javax.swing.JTextField;
public class guifirst extends JFrame{
private JLabel label;
private JLabel label1;
private JTextField text;
private JButton button;
private JPanel panel;
public guifirst(){
label=new JLabel("Enter a number");
setSize(450,100);
text=new JTextField(15);
button=new JButton("Calculate");
class addaction implements ActionListener{
public void actionPerformed(ActionEvent event){
double number=Double.parseDouble(text.getText());
double result=number*number;
label1=new JLabel("Your result is"+result);
}
}
ActionListener listener=new addaction();
button.addActionListener(listener);
panel=new JPanel();
panel.add(label);
panel.add(label1);//line 32
panel.add(text);
panel.add(button);
add(panel);
}
}
エラー:
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1090)
at java.awt.Container.add(Container.java:410)
at person.guifirst.<init>(guifirst.java:32)
at person.person.main(person.java:6)