У меня есть класс, который расширяет JList и использует DefaultListModel.
Допустим, у меня есть список, содержащий элементы A, B, C, D и т. д.
Я могу выбрать несколько элементов, но мне бы хотелось, чтобы A и B никогда не могли быть выбраны одновременно. Поэтому я хотел бы, чтобы, если я выберу A, затем B, A будет отменено, и наоборот.
Это возможно?
Изменить: добавлена начальная реализация
public TestList extends JList {
public void TestList() {
super(new DefaultModelList());
}
// Method 2
public void addSelectionInterval(int anchor, int lead) {
//DO Work
}
// Method 3
public void setSelectedValue(Object obj, boolean shouldScroll) {
// DO WORK
}
}
TestList test = new TestList();
// Method 1
test.addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
// check value selected and deselect if necessary
}
}
Я пробовал эти способы, но ни один из них не работает. Текущая проблема заключается в том, что когда я выбираю элемент, ни один из них не запускается, насколько я могу судить.