background image

示方式、选择行列等,在此不一一赘述。
 使用类 JTable 显示数据之前,必须根据情况生成定制模型、单元绘制器或单元编辑器。
类 AbstractListModel 用来定制用户自己的数据模型,这个类在后面要介绍 。
TableCellRenderer 接口用来定制单元绘制器,TableCellEditor 接口用来定制单元编辑器,
这两个接口主要用于颜色对象的处理上,在示例中没有用到,不做过多说明。
 3、类 AbstractTableModel:
 类 AbstractTableModel 是一个抽象类,没有完全实现,不能实例化,使用时必须在程序
中实现方法。它隶属于 javax.swing.table 。类定义如下:
 

public

 

abstract

 

class

 AbstractTableModel 

extends

 Object

 

implements

 TableModel, Serializable{…}

 类 AbstractTableModel 提供了 TableModel 接口中绝大多数方法的缺省实现。TableModel
接口定义了 JTable 的基础数据结构。用户要生成自己的数据模型,本来可以通过实现
TableModel 接口中所有方法来满足要求,但管理听众表的功能对于所有数据模型是共同
的,所以在 javax.swing.table 中又定义了类 AbstractTableModel 来处理这个工作。它既管理
听众表,又为生成 TableModelEvents 事件并委托给听众提供了便利。
 要生成一个具体的 TableModel 作为 AbstractTableMode 的子类,至少必须实现下面三个
方法:
 

public

 int getRowCount();

 

public

 int getColumnCount();

 

public

 Object getValueAt(int row, int column);

 至此,我们可以建立一个简单二维表(5×5),实现方法如下:
 TableModel dataModel = 

new

 AbstractTableModel() {

 

public

 int getColumnCount() { 

return

 5; }

 

public

 int getRowCount() { 

return

 5;}

 

public

 Object getValueAt(int row, int col)

 { 

return

 

new

 Integer(row*col); }

 };
 JTable table = 

new

 JTable(dataModel);

 JScrollPane scrollpane = 

new

 JScrollPane(table);

 
 二、数据库及其连接方法简介:
 示例采用 Sybase 数据库系统,数据库存放在数据库服务器中。路径为:D:\WORKER,
数据库名为:worker.dbf。具有以下字段:

 

 

 字段名          类型
 Wno(职工号) 

 

     VARCHAR

 Wname(职工名) 

 

    VARCHAR

 Sex(性别) 

 

      VARCHAR

 Birthday(出生日期)  

DATE

 Wage(工资)      FLOAT
 要连接此数据库,需使用 java.sql 包中的类 DriverManager。此类是用于管理 JDBC 驱动
程序的实用程序类。它提供了通过驱动程序取得连接、注册,撤消驱动程序,设置登记和
数据库访问登录超时等方法。具体连接方法如下: