2013-10-14 82 views
0

我正在爲我的遊戲設計一個登錄屏幕,除了一件事外,一切正常。當我檢查JTextField ==「」中的文本時,它仍然啓動遊戲和其他內容。如果我的JTextField中沒有文本,爲什麼我的JOptionPane不會顯示?

下面就來看看我的代碼:

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,如果沒有,登錄到遊戲(稍後添加),但顯然,這沒有發生。它只是在控制檯輸出空白區域。

提前致謝! :)

回答

0

您需要使用equals方法比較字符串。目前你的比較都不會是真實的。

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

謝謝你!有效! :) – Payneztastic

相關問題