TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三

第三 篇:使用表格列

一般情 况下使用一个空的表格是不能做任何事情的。所以让我多添加几列到表格里面去, TWaver 使用类 twaver.table.TTableColumn 这个类去装载一个表格列的信息。它继承自 javax.swing.table.TableColumn 并且给你提供了排序、可见等其它选项。

添加一 个列:

twaver.TTable

       public void addColumn(TableColumn aColumn)

       public void addColumns(List columnList);

twaver.table.TtableModel

       public void addColumn(TableColumn aColumn)

       public void addColumn(List columnList)

删除一 个列:

Twaver.TTable

                      Public void removeColumn(TableColumn column)

                      Public void removeColumnByName(String columnName)

Twaver.table.TtableModel

                         Public void removeColumn(TableColumn column)

                         Public void removeColumnByName(String columnName)

清除所 有列:

      Twaver.table.TtableModel

                                  Public void clearAllColumns()

这里我 们就为一个表格创建两个列

TTable table  = new TTable();

table.addColumn(new TTableCOlumn(“Name”));

table.addColumn(new TTableColumn(“Description”));

TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第1张图片


下面的 一些属性是在 Twaver table 列里定义的:

                                                                  
  

属 性

  
  

类 型

  
  

描 述

  
  

name

  
  

String

  
  

列 头名,它被用与使用国际化的对应键

  
  

displayname

  
  

String

  
  

列 的展示名字,如果展示的名字不为 null , 那它将被展示为表格的列头文字;另外, TWaver i18n 的资源文件里获取国际化的字符串。这个键值为:“ table.column. +name

  
  

sortComparator

  
  

java.util.Comparator

  
  

为 表格排序的 Comparator

  
  

editable

  
  

boolean

  
  

列 是不是可以修改的

  
  

visible

  
  

boolean

  
  

列 是不是可见的

  
  

sortmode

  
  

int

  
  

l       TTableColumn.SORT_NON: 无排序

  

l       TTableColumn.SORT_ASCEND: 升序排列

  

l       TTableColumn.SORT_DESCEND: 降序排序

  
  

preferredWidth

  
  

int

  
  

优 先的表格列宽

  
  

javaClass

  
  

Class

  
  

设 置当列的数据类, TWaver 利用它从 TUIManager 中注册 renderer editor

  
  

editor

  
  

TableCellEditor

  
  

列 的 Editor

  
  

renderer

  
  

TableCellEditor

  
  

列 的 Renderer

  

表格列 的隐藏

你可以 设置可见属性来隐藏或者显示表格的列

TTable table = new TTable();

table.addColumn(new TTableColumn("Name"));

table.addColumn(new TTableColumn("Description"));

table.addColumn(new TTableColumn("Additional"));

TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第2张图片

隐藏“ Additional ”列

table.getColumnByName(“Additional”).setVisible(false);

TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第3张图片


你也可 以在表格列头点击右键,在弹出的右键菜单上去掉列的显示对钩,去掉对钩隐藏,加上对钩显示对应的列

TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第4张图片



表格列排序

TWaver table 数据可以通过列被排序,这 种排序方式有无排序、升排序和降排序,点击表格的表头去改变表格的排序方式,按住 Ctr 键的同时点击表格的列头可以实现多个列的排序。

TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第5张图片


使用 table.setSortable(false) 去设置表格的不可排序

使用 TTableColumn.setSortComparator(java.util.Comparator) 去自定义排序

使用 Sort

TWaver table 支持列排序和默认排序方 式,点击表格的列头去进行列排序

TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第6张图片

设置列 不可排序:

Table.getTableModel().getColumnByName(“age”).setSortable(false);

TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第7张图片

如上看 到效果了

多列排 序

TElementTable 支持多列排序,你可以按住 ctr 键的同时点击列头实现多列排序: TWaver组件之Table使用(翻译TWaver文档+补充自己使用体会)三_第8张图片

通过 API 排 序

单列排 序: table.getTableModel().sortColumn(0,false);

多列排 序:

table.getTableModel().sortColumn(0,false);// 这列一额可以为 true

table.getTableModel().sortColumn(1,true);// 使用 true 是不是按住了 ctr

你可能感兴趣的:(java,Swing)