いくつかのアイテムを含むJListがあります。リスト内のアイテムが選択されたときのリスナーを追加しました。リスト内のアイテムが選択されたときに何が起こるかについてのコードは次のとおりです。
private void questionaireNamesListValueChanged(ListSelectionEvent evt) {
try {
inputPanel.setEnabled(false);
inputPanel.setVisible(false);
inputTextField.setText("");
inputStatusLabel.setText("");
int questionaireIndex = questionaireNamesList.getSelectedIndex();
// Why will this be printed twice?
System.out.println("Questionaire Index: " + questionaireIndex);
if (remoteQuestionServer.getQuestionCount(questionaireIndex) == 5) {
answerQuestionButton.setEnabled(true);
addQuestionButton.setEnabled(false);
} else {
addQuestionButton.setEnabled(true);
answerQuestionButton.setEnabled(false);
}
} catch (RemoteException ex) {
ex.printStackTrace();
}
}
上記のように、System.out.print
ステートメントを入力し、リスト内の何かをクリックするたびに、そのアイテムに対して2つの出力を取得します。
Questionaire Index: 4
Questionaire Index: 4
Questionaire Index: 2
Questionaire Index: 2
Questionaire Index: 0
Questionaire Index: 0
Questionaire Index: 2
Questionaire Index: 2
なぜこれが起こっているのか考えていますか?
ありがとう、パトリック