- 所有已知的实现类:
-
DefaultTableColumnModel
public interface TableColumnModel
定义了适用于
JTable的表列模型对象的要求。
- 参见:
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddColumn(TableColumn aColumn) 将aColumn追加到tableColumns数组的末尾。void为表列模型事件添加监听器。getColumn(int columnIndex) 返回位于columnIndex处的列的TableColumn对象。int返回模型中的列数。intgetColumnIndex(Object columnIdentifier) 返回表中第一个标识符等于identifier的列的索引,使用equals进行比较。intgetColumnIndexAtX(int xPosition) 返回位于水平点xPosition处的列的索引;如果位于任何列的边界之外,则返回-1。int返回每列中的单元格之间的宽度。返回模型中所有列的Enumeration。boolean如果可以选择列,则返回true。int返回选定列的数量。int[]返回所有选定列的索引数组。返回当前选择模型。int返回所有列的总宽度。voidmoveColumn(int columnIndex, int newIndex) 将位于columnIndex处的列及其标题移动到newIndex。voidremoveColumn(TableColumn column) 从tableColumns数组中删除TableColumncolumn。void删除表列模型事件的监听器。voidsetColumnMargin(int newMargin) 将TableColumn的列边距设置为newMargin。voidsetColumnSelectionAllowed(boolean flag) 设置此模型中的列是否可以选择。voidsetSelectionModel(ListSelectionModel newModel) 设置选择模型。
-
Method Details
-
addColumn
将aColumn追加到tableColumns数组的末尾。此方法向其监听器发布columnAdded事件。- 参数:
-
aColumn- 要添加的TableColumn - 参见:
-
removeColumn
从tableColumns数组中删除TableColumncolumn。如果column不在表的列列表中,则此方法不执行任何操作。此方法向其监听器发布columnRemoved事件。- 参数:
-
column- 要移除的TableColumn - 参见:
-
moveColumn
void moveColumn(int columnIndex, int newIndex) 将位于columnIndex处的列及其标题移动到newIndex。现在,columnIndex处的旧列将在newIndex处找到。原来位于newIndex处的列将左移或右移以腾出空间。如果columnIndex等于newIndex,则不会移动任何列。此方法向其监听器发布columnMoved事件。- 参数:
-
columnIndex- 要移动的列的索引 -
newIndex- 列的新位置的索引 - 抛出:
-
IllegalArgumentException- 如果columnIndex或newIndex不在有效范围内
-
setColumnMargin
void setColumnMargin(int newMargin) 将TableColumn的列边距设置为newMargin。此方法向其监听器发布columnMarginChanged事件。- 参数:
-
newMargin- 新列边距的宽度(以像素为单位) - 参见:
-
getColumnCount
int getColumnCount()返回模型中的列数。- 返回:
- 模型中的列数
-
getColumns
Enumeration<TableColumn> getColumns()返回模型中所有列的Enumeration。- 返回:
-
模型中所有列的
Enumeration
-
getColumnIndex
返回表中第一个标识符等于identifier的列的索引,使用equals进行比较。- 参数:
-
columnIdentifier- 标识符对象 - 返回:
-
第一个标识符等于
identifier的表列的索引 - 抛出:
-
IllegalArgumentException- 如果identifier为null,或没有TableColumn具有此identifier - 参见:
-
getColumn
返回位于columnIndex处的列的TableColumn对象。- 参数:
-
columnIndex- 所需列的索引 - 返回:
-
位于
columnIndex处的列的TableColumn对象
-
getColumnMargin
int getColumnMargin()返回每列中的单元格之间的宽度。- 返回:
- 单元格之间的边距(以像素为单位)
-
getColumnIndexAtX
int getColumnIndexAtX(int xPosition) 返回位于水平点xPosition处的列的索引;如果位于任何列的边界之外,则返回-1。根据Swing的可分离模型架构,TableColumnModel不知道表列实际上在屏幕上如何显示。列的视觉呈现是使用此模型的视图/控制器对象(通常是JTable)的责任。视图/控制器不必按顺序从左到右显示列。例如,列可以从右向左显示以适应区域设置偏好,或者某些列可能根据用户的请求而被隐藏。因为模型不知道列在屏幕上的布局方式,所以给定的xPosition不应被视为二维图形空间中的坐标。相反,它应被视为从模型中第一列的开头的宽度。如果需要给定X坐标的列索引在二维空间中,可以使用JTable.columnAtPoint。- 参数:
-
xPosition- 从模型中第一列的开头的宽度。 - 返回:
- 列的索引;如果找不到列,则返回-1
- 参见:
-
getTotalColumnWidth
int getTotalColumnWidth()返回所有列的总宽度。- 返回:
- 所有列的总计算宽度
-
setColumnSelectionAllowed
void setColumnSelectionAllowed(boolean flag) 设置此模型中的列是否可以选择。- 参数:
-
flag- 如果可以选择列,则为true;否则为false - 参见:
-
getColumnSelectionAllowed
boolean getColumnSelectionAllowed()如果可以选择列,则返回true。- 返回:
- 如果可以选择列,则为true
- 参见:
-
getSelectedColumns
int[] getSelectedColumns()返回所有选定列的索引数组。- 返回:
- 包含所有选定列的索引的整数数组;如果没有选定任何内容,则返回空数组
-
getSelectedColumnCount
int getSelectedColumnCount()返回选定列的数量。- 返回:
- 选定列的数量;如果没有选定列,则为0
-
setSelectionModel
设置选择模型。- 参数:
-
newModel- 一个ListSelectionModel对象 - 参见:
-
getSelectionModel
ListSelectionModel getSelectionModel()返回当前选择模型。- 返回:
-
一个
ListSelectionModel对象 - 参见:
-
addColumnModelListener
为表列模型事件添加监听器。- 参数:
-
x- 一个TableColumnModelListener对象
-
removeColumnModelListener
删除表列模型事件的监听器。- 参数:
-
x- 一个TableColumnModelListener对象
-