如何将所选对象从一个JList传输到另一个JList?
我想将所选对象从一个JList传输到另一个JList,比如List1和List2。
首先看一下JList#getSelectedValuesList
(如果您使用的是Java 6或更早版本,则为JList#getSelectedValues
)
然后,您需要将这些值应用于第二个JList
的模型。 你如何做到这将取决于你已经使用的模型……
因为你没有显示任何代码,我只能这样说:
假设您正在使用自定义对象的arrayList作为每个列表的数据源,您可以使用一个按钮,按下该按钮,获取所选项目索引,抓取该对象,然后将其添加到其他列表。
method for the pressed button event (){ arrayList2.add(arrayList1.get(jList1.getSelectedIndex()); }
在此之后,您可以在jlist2上重新加载模型,以便显示新数据。
希望能帮助到你
尝试这样的事情。 它会工作正常
DefaultListModel dlm = new DefaultListModel(); jButtonActionPerformed { jList2.setModel(dlm); jList1.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); for (Iterator it = jList1.getSelectedValuesList().iterator(); it.hasNext();) { String sel = (String) it.next(); if (dlm.contains(sel)) { } else { dlm.addElement(sel); } } }