我有以下演示应用程序,它显示值列表,但我需要能够控制列表中元素的顺序.什么是添加此最简单的方法?
package demo;
import javax.swing.DefaultListModel;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.ListModel;
public class JListOrder {
public JListOrder()
{
JFrame frame = new JFrame("JListOrder");
DefaultListModel model = new DefaultListModel();
model.addElement("z");
model.addElement("Z");
model.addElement("a");
model.addElement("A");
model.addElement("C");
model.addElement("c");
model.addElement("b");
model.addElement("B");
JList list = new JList(model);
frame.add(list);
frame.setSize(200,200);
frame.setVisible(true);
}
public static void main(String[] args) {
new JListOrder();
}
}
Run Code Online (Sandbox Code Playgroud)
最简单的方法是使用支持JXList排序/过滤的SwingX,方法与核心表排序/过滤相同:
JXList list = new JXList(model);
list.setAutoCreateRowSorter(true);
list.toggleSortOrder();
Run Code Online (Sandbox Code Playgroud)