gpt4 book ai didi

java - AbstractListModel 有 getSelectedIndex() 方法吗?

转载 作者:行者123 更新时间:2023-12-01 13:05:07 26 4
gpt4 key购买 nike

我正在尝试从 AbstractListModel 的实现中获取所选项目。我应该使用什么类型的监听器?似乎只有 ListDataListener 类,但似乎没有我正在寻找的功能。

感谢您的帮助!

实现如下:

 class MyListModel extends javax.swing.AbstractListModel<String> {
private final ArrayList<String> myArrayList = new ArrayList<String>();


public void addElement(String obj) {
if(obj==null || obj.isEmpty()) return;
myArrayList.add(obj);
fireIntervalAdded(this, myArrayList.size()-1, myArrayList.size()-1);
}
public void removeElement(String obj) {
int idx = myArrayList.indexOf(obj);
if(idx!=-1) {
myArrayList.remove(obj);
fireIntervalRemoved(this, idx, idx);
}
}


@Override
public String getElementAt(int index) { return myArrayList.get(index); }

@Override
public int getSize() { return myArrayList.size(); }
}

最佳答案

getSelectedIndex() 方法不是model 的方法,它是view (JList) 的方法。一个模型可能被多个 View 共享,因此无法跟踪模型中的选择。

JList 使用 ListSelectionModel 来跟踪所选索引。

关于java - AbstractListModel 有 getSelectedIndex() 方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23325592/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com