描述:获取的方法有两种:
getBillListPanel().getHeadTable();
getBillListPanel().getHeadBillModel();
这两种有什么区别?
解决:
与 JAVA SWING
中一样,对于一个表来说,它有表体(即
TABLE
)和数据模型(即
TABLEMODEL
)
,
利用
Swing
来构造一个表格其实很简单的,只要你利用
Vector
或
Array
来作为我们表格的数据输入,将
Vector
或
Array
的内容填入
JTable
中,一个基本的表格就产生了。不过,虽然利用
JTable(Object[][] rowData,Object[][] columnNames)
以及
JTable(Vector rowData,Vector columnNames)
构造函数来构造构造
JTable
很方便
,
但却有些缺点。例如,我们表格中的每个字段
(cell)
一开始都是默认为可修改的,用户因此可能修改到我们的数据
;
其次,表格中每个单元
(cell)
中的数据类型将会被视为同一种。
除此之外,如果我们所要显示的数据是不固定的,或是随情况而变,例如同样是一份成绩单,老师与学生所看到的表格就不会一样,显示的外观或模式也许也不相同。为了因应这些种种复杂情况,上面简单的构造方式已不宜使用, Swing
提供各种
Model(
如:
TableModel
、
TableColumnModel
与
ListSelectionModel)
来解决上述的不便,以增加我们设计表格的弹性。
TableModel
类本身是一个
interface,
在这个
interface
里面定义了若干的方法
:
包括了存取表格字段
(cell)
的内容、计算表格的列数等等的基本存取的动作,让设计者可以简单地利用
TableModel
来实作他所想要的表格。
getBillListPanel().getHeadTable();
getBillListPanel().getHeadBillModel();
这两种有什么区别?
解决:
与 JAVA SWING
除此之外,如果我们所要显示的数据是不固定的,或是随情况而变,例如同样是一份成绩单,老师与学生所看到的表格就不会一样,显示的外观或模式也许也不相同。为了因应这些种种复杂情况,上面简单的构造方式已不宜使用, Swing
TableModel