-1

この注文を行う必要があります:

次の場合、エラー メッセージを表示し、ユーザーに再度プロンプトを表示します。

  1. ユーザーは何も入力せずに [OK] をクリックします (空のエントリ)。
  2. ユーザーが 1 つまたは複数のスペースのみを入力した後、[OK] をクリックします。
  3. 拡張子 txt で終わらないファイル名を入力します。

.

String str;
    str = JOptionPane.showInputDialog(null, "Enter filename(*.txt)", 
         "File name", JOptionPane.QUESTION_MESSAGE);
    if (str==null)      
        if(str.equals(JOptionPane.OK_OPTION))
        {
            JOptionPane.showMessageDialog(null,
                       "Invalid file name","Error",JOptionPane.ERROR_MESSAGE);    
        }   
    }

しかし、何も入力せずに[OK]をクリックすると、メッセージダイアログが表示されません

4

1 に答える 1

0

おそらく、showInputDialog() は、ユーザーが何も入力せずに [OK] ボタンを押すと、null ではなく "" を返します。

提案として: IDE でデバッガーを使用し、ダイアログ表示の後にブレークポイントを置き、戻り値を確認してください。これにより、何が問題なのかをすばやく発見できます。

于 2013-10-16T11:46:57.167 に答える