![](/img/trans.png)
[英]How to Transfer selected objects from one JList to another JList in swing?
[英]How to transfer the elements from one JList to other JList in Java?
我在摆动GUI上有两个JList。 现在,我希望当用户单击按钮(例如TransferButton)时,将从一个JList中选择的元素从第一个JList添加到第二个JList,并从第一个JList中删除那些选择的元素。
该模型不知道选择。
JList提供了几种获取所选项目或所选索引的方法。 使用这些方法获取项目并将其添加到其他列表的模型中。
您有两个JList
,然后还有它们各自的ListModel
。 根据实现它们的方式,您可以只从一个模型中删除元素,然后将它们添加到另一个模型中。 但是请注意,默认情况下, ListModel
接口只需要元素访问即可,因此您可能必须自己在其中实现add
和remove
方法。
DefaultListModel leftModel = new DefaultListModel();
leftModel.addElement("Element 1");
leftModel.addElement("Element 2");
leftModel.addElement("Element 3");
leftModel.addElement("Element 5");
leftModel.addElement("Element 6");
leftModel.addElement("Element 7");
JList leftList = new JList(leftModel);
DefaultListModel rightModel = new DefaultListModel();
JList rightList = new JList(rightModel);
假设您有两个JList组件,如上面的代码所述(左和右)。 您必须编写以下代码才能从左到右JList传输选定的值。
for(Object selectedValue:leftList.getSelectedValuesList()){
rightModel.addElement(selectedValue);
leftModel.removeElement(selectedValue);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.