Java:从文本字段中提取数据时focusLost方法出错

时间:2013-10-08 03:04:59

标签: java nullpointerexception lost-focus

当我尝试从focusLost上的文本字段中提取数据时,我收到了这个奇怪的错误。

所以我有一个文本字段,其想法是当用户在点击其他地方后输入数据时,必须验证输入。

这是构造函数中的行,我将ficus侦听器添加到文本字段

ip_address_textField.addFocusListener(new ip_address_textField_FieldHandler());

在这个班级里面我有另一个班级

public class ip_address_textField_FieldHandler implements FocusListener {

private static final String IPADDRESS_PATTERN =
        "^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." +
        "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." +
        "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\." +
        "([01]?\\d\\d?|2[0-4]\\d|25[0-5])$";

private Pattern pattern;
private Matcher matcher;

@Override
public void focusGained(FocusEvent e) {
    // TODO Auto-generated method stub
    System.out.println("Focus Gained");

}

@Override
public void focusLost(FocusEvent e) {
    // TODO Auto-generated method stub

    System.out.println(ip_address_textField.getText().trim());
    //ip_address_textField.setText(IPADDRESS_PATTERN);
    System.out.println("Focus Lost ->");
}

JTextField是类变量

我得到的错误是:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at mia.recommender.ch02.Course_Recommender$ip_address_textField_FieldHandler.focusLost

1 个答案:

答案 0 :(得分:1)

这两个中的任何一个都是null:

  • ip_address_textField - 当你尝试调用getText()时,它会抛出nullpointer
  • ip_address_textField.getText() - 当您尝试修剪它时会抛出nullpointer