0

ユーザーにユーザーIDを入力するように求めるJava GUIを構築しています。テキストファイルリストに一致するものが見つかった場合は、その情報をGUIパネルに表示します。彼の ID が見つからない場合は、もう一度 ID を入力するよう求めるプロンプトを表示します。

私が今持っているプログラムは、間違ったIDを入力した後、次に入力したIDが正しいものであっても、正しい情報を画面に表示できないというものです。私のGUIは、その「間違ったID」の状態に永遠にとどまります。何がうまくいかなかったのかを理解するのに何時間も費やしましたが、見つけることができませんでした。どんな助けでも大歓迎です!

GUI スクリーンショット

  private class okButtonListener implements ActionListener{
      public void actionPerformed(ActionEvent e){
          FileReader fr = null;
            try{
                fr = new FileReader("charList.txt");
            }
            catch (FileNotFoundException e1){
                e1.printStackTrace();
            }
            BufferedReader bf = new BufferedReader(fr);

            userID = Integer.parseInt(idField.getText());

            while(line != null){
                try{
                    line = bf.readLine();
                }
                catch (IOException e1){
                    e1.printStackTrace();
                }
                if (line != null){
                    fields = line.split("\t");
                    if (userID == Integer.parseInt(fields[0])){
                        System.out.println(fields[2]);
                        displayFieldsSelections();
                        resetFields();
                        break;
                    }
                }
            }

            if (userID != Integer.parseInt(fields[0])){
                mistakeResetFields();   
            }
      }
  }
4

1 に答える 1

1

line問題は、ローカルで宣言していないことだと思います。メソッドの冒頭で を宣言してみてくださいline

于 2013-11-09T17:58:34.907 に答える