浅谈Java利用表格模型创建表格 原创
用来创建表格的 jtable 类并不负责存储表格中的数据,而是由表格模型负责存储。当利用 jtable 类直接创建表格时,只是将数据封装到了默认的表格模型中。接下来,我们来学习表格模型的使用方法。
利用表格模型创建表格
接口 tablemodel 定义了一个表格模型,抽象类 abstracttablemodel 实现了 tablemodel 接口的大部分方法,只有一下三个抽象方法没有实现。
(1)public int getrowcount() (2)public int getcolumncount() (3)public object getvalueat(int rowindex , int columnindex)
通过继承 abstracttablemodel 类实现上面三个抽象方法可以创建自己的表格模型类。defaulttablemodel 类便是由 swing 提供的继承了 abstracttablemodel 类并实现了上面三个抽象方法的表格模型类。
表格模型创建完成后,通过 jtable 类的构造方法 jtable(tablemodel dm)创建表格,就实现了利用表格模型创建表格。
从jdk 1.6 开始,提供了对表格进行排序的功能。通过 jtable 类的 setrowsoreter(rowsorter<?extends tablemodel>sorter)方法可以为表格设置排序器。tablerowsorter 类是由swing 提供的排序器类。为表格设置排序器的典型代码如下:
defaulttablemodel tablemodel = new defaulttablemodel(); //创建表格模型 jtable table = new jtable(tablemodel); //创建表格 table.setrowsorter(new tablerowsorter(tablemodel)); //设置排序器
如果为表格设置了排序器,当单机表格的某一列头时,在该列名称的后面将出现▲标记,说明按该列升序排列表格中的所有行;当再次单机该列头时,标记将变成▼,说明按该列降序排列表格中的所有行。
注意:
在使用表格排序器时,通常要为其设置表格模型。一种方法是通过构造方法 tablerowsorter(tablemodel model)创建排序器;另一种方法是通过 setmodel(tablemodel model)方法为排序器设置表格模型。
以上就是本文的所有内容,谢谢大家对本站的支持,后面更加精彩!