パネルにいくつかのボタンがあり、クリックするたびに入力ダイアログ ボックスが表示されます。組み込みのキャンセルボタンがあります。今、ダイアログ ボックスに数量を入力せずにコードの先頭にあるキャンセル ボタンをクリックすると、「これは無効な番号です」と表示されます。この行は、ユーザーがアルファベットまたは記号を入力した場合にのみ表示され、キャンセルを押した場合には表示されません。これを解決できますか?
3 に答える
2
String
まず、 a が数値を表しているかどうかを判断する方法が必要です。以下の方法でDouble.valueOf()
決定します。
private Double valueOf(String s) {
try {
return Double.valueOf(s);
} catch (NumberFormatException e) {
return null;
}
}
メソッドの使用例を次に示します。
private void display() {
String input = JOptionPane.showInputDialog(
null, "Enter a number?", "Number", JOptionPane.QUESTION_MESSAGE);
Double value = valueOf(input);
JOptionPane.showMessageDialog(null, "The value " + input
+ " is " + (value != null ? "valid" : "invalid") + ".");
}
ダイアログの作成方法も参照してください。
于 2012-12-01T12:59:53.333 に答える
0
やってみて、
String Input = JOptionPane.showInputDialog(null,"Enter the number?",
"Number", JOptionPane.QUESTION_MESSAGE);
if (Input.equals(""))
{
JOptionPane.showMessageDialog(null,"This is an invalid number");
}
次のリンクはそれをさらによく説明しています: Simple Data Validation。
于 2012-12-01T12:06:31.870 に答える
0
String Input = JOptionPane.showInputDialog(null,"数字を入力しますか?",
"Number", JOptionPane.QUESTION_MESSAGE);
if (Input.matches(("((-|\+)?[0-9]+(\.[0-9]+)?)+"))) { JOptionPane.showMessageDialog(null,"有効な数値" ); } else{ JOptionPane.showMessageDialog(null,"これは無効な番号です"); }
于 2012-12-03T05:19:41.130 に答える