我有两个JList.
列表A包含以下元素:
列表B现在是空的.
我的框架有这两个列表和一个按钮验证.单击按钮后,列表A的所选项将被验证是否为整数.如果是这样,则必须将所选项目转移到列表B并从列表A中删除.
到目前为止我所做的是点击按钮时,项目被复制,但是一旦我选择了另一个项目,前一个项目将被我不想要的新项目替换.
如何将项目转移(附加)到另一个列表并将其从第一个列表中删除,这样我最终得到的所有项目列表都没有被新项目替换.
用一个DefaultListModel.
DefaultListModel dlmA = new DefaultListModel(); // For list A
dlmA.addElement(1);
dlmA.addElement("two");
dlmA.addElement(78);
dlmA.addElement("item4");
listA.setModel(dlmA);
Run Code Online (Sandbox Code Playgroud)
现在,你的清单B也一样.
DefaultListModel dlmB = new DefaultListModel(); // For list B
listB.setModel(dlmB);
Run Code Online (Sandbox Code Playgroud)
如果要将项目添加到第二个列表,只需将它们添加到DefaultListModel dlmB.这意味着您必须dlmB在工作类中保留引用,这样您就可以在按钮的ActionListener中向其添加元素.
public void actionPerformed(ActionEvent evt)
{
// Perform your checks. If you want to add it to list B, use:
dlmB.addElement(yourNewElem);
}
Run Code Online (Sandbox Code Playgroud)