JTextFieldのgetTextについて
javaプログラミング初心者です。
javaのGUIプログラミングについて少し分からないところがあるので質問させて頂きます。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class TextTest extends JFrame implements ActionListener{
private static final long serialVersionUID = 1L;
JTextField text = new JTextField(null, 10);
JPanel p1 = new JPanel();
public static void main(String[] args){
TextTest frame = new TextTest();
frame.setVisible(true);
}
public TextTest(){
setBounds(10, 10, 460, 310);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setTitle("Test");
GridBagLayout layout1 = new GridBagLayout();
p1.setLayout(layout1);
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = 0;
layout1.setConstraints(text, gbc);
p1.add(text);
JButton decidebutton = new JButton("決定");
gbc.gridy = 1;
layout1.setConstraints(decidebutton, gbc);
p1.add(decidebutton);
getContentPane().add(p1, BorderLayout.CENTER);
decidebutton.addActionListener(this);
decidebutton.setActionCommand("決定");
}
public void actionPerformed(ActionEvent e){
String cmd = e.getActionCommand();
if(cmd.equals("決定")){
String str = text.getText();
if(str == null){
JOptionPane.showMessageDialog(null, "NULL入力");
}
else{
JOptionPane.showMessageDialog(null, "それ以外");
}
}
}
}
以上のプログラムを実行したとき、「決定」ボタンを押した際に「NULL入力」と書かれたダイアログが出てくるのが望ましいのですが、
実際には「それ以外」と書かれたダイアログが出てきてしまいます。
getTextメソッドではnullを返せないのか、と思い、テキストフィールドに「あ」、「NULL入力」と書かれたダイアログを表示させる条件をif(str == "あ")にしたのですがそれでも駄目・・・。
独学では限界があると思い質問させて頂きました。
これについての解決の方法を知っている方、よろしくお願いいたします。
お礼
ありがとうございます、説明の通りにやったら出来ました。