如果我的JTextField中没有文本,为什么我的JOptionPane不会出现?

时间:2013-10-14 18:15:32

标签: java swing jtextfield

我正在为我的游戏登录屏幕,一切正常,除了一件事。当我检查来自JTextField ==“”的文本时,它仍会启动游戏等等。

以下是我的代码:

public void attemptLogin(String username, String passcode) {
    if (username != "" && passcode != "") {
        System.out.println(username);
        System.out.println(passcode);
    } else if (username == " " || passcode == " ") {
        JOptionPane.showMessageDialog(null, "Put in your credentials!", "Hey you!", JOptionPane.ERROR_MESSAGE);
    }
}

}

在我的主要课程中,它是:

public void actionPerformed(ActionEvent action) {
        if (action.getSource() == login) {
            gamelogin.attemptLogin(username.getText(), passcode.getText());
        } else if (action.getSource() == register) {
            account.registerAccount();
        }
    }

现在必须发生的是,如果JTextField显示为空白,则显示JOptionPane,如果没有,则登录游戏(稍后添加),但显然,这不会发生。它只是在控制台中输出空白区域。

提前致谢! :)

1 个答案:

答案 0 :(得分:0)

您需要使用equals-method来比较字符串。你的比较目前都不会成真。

username.equals("") && passcode.equals("")