![](/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.