您的位置:首页 > 编程语言 > Java开发

Java Swing JTable 表格【14:表格的排序和过滤】

2016-01-11 23:02 567 查看

表格的排序和过滤:

排序和过滤基于一个新概念—-行排序器对象,它能够对行数据进行排序(和过滤)。把一个行排序其加入到一个表格组件中的最简单的方法是调用javax.swing.JTable中新引入的publci void setAutoCreateRowSorter(boolean autoCreateRowSorter)。

例子代码如图:

package com.acconsys.swing.chapter14;

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.RowSorter;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;

/**
* 排序和过滤
*
* @author Administrator
*
*/
public class Test16 {

public static void main(String[] args) {
JFrame jf = new JFrame("JTable的排序测试");
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 表格中显示的数据、
Object rows[][] = { { "王鹏", "江西", "43" }, { "周丹", "四川", "25" },
{ "钱丽", "贵州", "32" }, { "孙军", "新疆", "24" },
{ "李欢", "江苏", "45" }, { "苏菲", "广东", "33" } };
String columns[] = { "姓名", "籍贯", "年龄" };
TableModel model = new DefaultTableModel(rows, columns);
JTable table = new JTable(model);
RowSorter sorter = new TableRowSorter(model);
table.setRowSorter(sorter);
JScrollPane pane = new JScrollPane(table);
jf.add(pane, BorderLayout.CENTER);
jf.setSize(300, 150);
jf.setVisible(true);

}
}


运行结果如图:



说明:这个例子只有排序,暂时没涉及过滤。以后补上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java jtable swing