У меня проблема с удалением старых элементов из моих списков. Я попытался использовать методы clear()
и removeAllElements()
и removeAll()
везде, где мог, но это, похоже, не очистило их.JList не выяснен
Чтобы помочь вам понять ситуацию немного лучше:
d1
является ArrayList
, который содержит все доступные устройства в нашей программе.
availList2
и availList3
использование: DefaultListModel
.
Мы хотели сделать это так, чтобы пользователь загружал продукты из соответствующего текстового файла, если он сделал это во второй раз, продукты, перечисленные в нашем gui, будут перезаписаны теми, что указаны в исходном текстовом файле. Однако мы получили дубликаты продуктов, хотя мы использовали метод clear()
как в d1
(ArrayList
), так и в JList
.
Любые полезные советы или возможные причины были бы оценены. Заранее большое спасибо.
if(ev.getSource() == load_availables) {
int returnVal = chooser.showOpenDialog(mainApp.this);
if(returnVal == JFileChooser.APPROVE_OPTION) {
d1.returnDevices().removeAll(d1.returnDevices());
availList2.clear();
availList3.clear();
//availList2.removeAllElements();
//availList3.removeAllElements();
File file = chooser.getSelectedFile();
read.ReadDevices(file);
for(int i = 0; i < read.Size(); i++) {
d1.add_AvailableDevices(read.get(i));
}
}
}