ユーザー名とパスワードを要求するこのコードがあります。ちょうど単純なJOptionPaneです。プログラムは入力を要求し、ユーザーがユーザー名に入力を書き込んでいない場合は、エラーメッセージを表示し、前と同じダイアログボックスにユーザー名を入力する必要があります。しかし、それはそのようには機能しません。何も入力しなくても、パスワードダイアログボックスに進みます。私の論理をチェックしてください、私はちょっと混乱しているかもしれません。 showInputDialog
の入力が文字列かどうかを確認する方法もありますか?整数の場合はNumberFormatException
のようになりますか? catchメソッドの例外は動作しません。 :) 前もって感謝します。JOptionPane。プログラムにエラーメッセージが表示されない
public class SwingExercise {
public static void main(String[] args) {
String name = null;
boolean input = true;
try {
while (input) {
while (name == null) {
name = JOptionPane.showInputDialog(null, "Enter username:");
if (name == null) {
JOptionPane.showMessageDialog(null, "No input.", "Error", JOptionPane.ERROR_MESSAGE);
}
}
String pw = JOptionPane.showInputDialog(null, "Enter password:");
input = false;
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Invalid input.", "Error", JOptionPane.ERROR_MESSAGE);
}
}
あなたは大歓迎であり、笑っています:-) –
'JOptionPane.showInputDialog(null、"パスワードを入力: ");' ['JPasswordField']を使用してください(http://docs.oracle.com/javase/7 /docs/api/javax/swing/JPasswordField.html)を使用してパスワードを取得します。詳細については、[パスワードフィールドの使用方法](http://docs.oracle.com/javase/tutorial/uiswing/components/passwordfield.html)を参照してください。 –
@Layne:あなたのコードを修正したことを見て、Andrew Thompsonが言っていることを見てください:-) –