AbstractTableModel的介绍

来源:互联网 发布:linux 挂载windows硬盘 编辑:程序博客网 时间:2024/06/07 01:39
AbstractTableModel:

  java提供的AbstractTableModel是一个抽象类,这个类帮我们实现大部份的TableModel方法,除了getRowCount(),getColumnCount(),getValueAt()这三个方法外。因此我们的主要任务就是去实现这三个方法.利用这个抽象类就可以设计出不同格式的表格.我们来看看它所提供的方法:

  AbstractTableModel方法:

  void addTableModelListener(TableModelListener l):使表格具有处理TableModelEvent的能力.当表格的Table Model有所变化时,会发出TableModelEvent事件信息。

  int findColumn(String columnName):寻找在行名称中是否含有columnName这个项目.若有,则返回其所在行的位置;反之则返回-1表示未找到。

  void fireTableCellUpdated(int row, int column):通知所有的Listener在这个表格中的(row,column)字段的内容已经改变了。

  void fireTableChanged(TableModelEvent e):将所收的事件通知传送给所有在这个table model中注册过的TableModelListeners。

  void fireTableDataChanged():通知所有的listener在这个表格中列的内容已经改变了.列的数目可能已经改变了,因此JTable可能需要重新显示此表格的结构。

  void fireTableRowsDeleted(int firstRow, int lastRow):通知所有的listener在这个表格中第firstrow行至lastrow列已经被删除了。

  void fireTableRowsUpdated(int firstRow, int lastRow):通知所有的listener在这个表格中第firstrow行至lastrow列已经被修改了。

  void fireTableRowsInserted(int firstRow, int lastRow):通知所有的listener在这个表格中第firstrow行至lastrow列已经被加入了。

  void fireTableStructureChanged():通知所有的listener在这个表格的结构已经改变了.行的数目,名称以及数据类型都可能已经改变了

  Class getColumnClass(int columnIndex):返回字段数据类型的类名称。

  String getColumnName(int column):若没有设置列标题则返回默认值,依次为A,B,C,...Z,AA,AB,..;若无此column,则返回一个空的String

  Public EventListener[] getListeners(Class listenerType):返回所有在这个table model所建立的listener中符合listenerType的listener,并以数组形式返回。

  boolean isCellEditable(int rowIndex, int columnIndex):返回所有在这个table model所建立的listener中符合listenerType形式的listener,并以数组形式返回。

  void removeTableModelListener(TableModelListener l):从TableModelListener中移除一个listener。

  void setValueAt(Object aValue, int rowIndex, int columnIndex):设置某个cell(rowIndex,columnIndex)的值。