条件名を格納する conditionList という ArrayList があります。リストが追加/編集または削除されるたびに、GUI のリストは問題なく更新されます。
以下に示すように、私は 2 つのモデルを使用しています... condListModel と呼ばれる DefaultListModel と conditionModel と呼ばれる DefaultComboBoxModel です。
以下のコードはメソッド editCondition() 用です。この段階では、テキストは GUI で既に変更されており、ここに送信されています。私の GUI では、変更を送信した後、ComboBox と JList は問題なく変更されるため、モデルの変更が正しいことを確認できます。
しかし、私の問題は次のとおりです。シリアライゼーションによってArrayList conditionListを保存し、それを再度ロードすると、変更がなくなります。SO ArrayList (名前付きの conditionList) の文字列値を変更すると、私のコードに問題があると思います。誰でも見て、問題に気付いたかどうかを確認できますか?
String conString = jListCondition.getSelectedValue().toString();
for(String c: conditionList)
{
if(conString.compareTo(c) == 0)
{
String temp = entConName.getText();
c = temp;
//edit the Condition jList model
int x = condListModel.indexOf(conString);
condListModel.setElementAt(temp, x);
jListCondition.setModel(condListModel);
//edit the Condition comboBox model
int i = conditionModel.getIndexOf(conString);
conditionModel.insertElementAt(temp, i);
conditionModel.removeElement(conString);
entCondition.setModel(conditionModel);
//reset buttons
editConConfirm.setEnabled(false);
editCon.setEnabled(false);
deleteCon.setEnabled(false);
entConName.setText("");
addCon.setEnabled(true);
}
}