利用JTable创建学生信息表.ppt

上传人:cn****1 文档编号:569810419 上传时间:2024-07-31 格式:PPT 页数:20 大小:1.24MB
返回 下载 相关 举报
利用JTable创建学生信息表.ppt_第1页
第1页 / 共20页
利用JTable创建学生信息表.ppt_第2页
第2页 / 共20页
利用JTable创建学生信息表.ppt_第3页
第3页 / 共20页
利用JTable创建学生信息表.ppt_第4页
第4页 / 共20页
利用JTable创建学生信息表.ppt_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《利用JTable创建学生信息表.ppt》由会员分享,可在线阅读,更多相关《利用JTable创建学生信息表.ppt(20页珍藏版)》请在金锄头文库上搜索。

1、利用利用JTable创建学生信息表创建学生信息表四、预备知识JTableJTable简介简介支持许多复杂支持许多复杂的定制的定制 Swing中功能中功能最强大的单一最强大的单一组件组件 JTableJTable 发挥其全部潜发挥其全部潜能的最富挑战能的最富挑战性的组件之一性的组件之一 位于位于javax.swingjavax.swing包中包中 创建、显示和创建、显示和管理表格管理表格 四、预备知识(1) (1) 创建所显示的数据的一个数组。创建所显示的数据的一个数组。(2) (2) 创建列标题的一个数组。创建列标题的一个数组。(3) (3) 创建创建JTableJTable的一个实例(对象)

2、,指定数据和标题。的一个实例(对象),指定数据和标题。(4) (4) 在多数情况下,需要设置可滚动的视口(窗口)的大小。在多数情况下,需要设置可滚动的视口(窗口)的大小。这可通过调用这可通过调用setPreferredScrollableViewportSize()setPreferredScrollableViewportSize()方法方法完成。完成。显示显示JTableJTable中数据的基本步骤中数据的基本步骤四、预备知识(5) (5) 可以调用可以调用setSelectionMode()setSelectionMode()改变选择模式。改变选择模式。(6) (6) 默认情况下,用户能

3、够选择一行。要允许选择列或单默认情况下,用户能够选择一行。要允许选择列或单元格,可以使用元格,可以使用setColumn SelectionAllowed()setColumn SelectionAllowed(),setRowSelectionAllowed() setRowSelectionAllowed() 或或setCellSelectionEnable()setCellSelectionEnable()。(7) (7) 创建一个创建一个JScrollPaneJScrollPane,指定,指定JTableJTable为要滚动的组件。为要滚动的组件。用用JTable类创建表格类创建表格J

4、Table的构造方法的构造方法(1)JTable(Object data, Object headerNames):自动创建一个表,容纳自动创建一个表,容纳data中指定的数据,并具有中指定的数据,并具有headerNames指定的标题名指定的标题名data数组是二维的,第一维指定表中的行数,第二数组是二维的,第一维指定表中的行数,第二维指定每一行中的元素数量。在所有的情况下,每维指定每一行中的元素数量。在所有的情况下,每一行的长度必须等于一行的长度必须等于headerNames的长度。的长度。(2)JTable(TableModel dm) 自动创建一个表,有默认的字段模式以及选择模式,自动

5、创建一个表,有默认的字段模式以及选择模式,并设置表格模式。参数并设置表格模式。参数dm表示指定的表格模式。表示指定的表格模式。 JTable不提供滚动能力,但是表通常被包含在不提供滚动能力,但是表通常被包含在JScrollPane中。中。JScrollPane 滚动条对象滚动条对象=new JScrollPane(表格对表格对象象);设置滚动视口的大小:使用设置滚动视口的大小:使用setPreferredScrollableViewportSize()方法,格式为:方法,格式为:void setPreferredScrollableViewportSize(Dimension dim)其中,其

6、中,dim指定滚动区域的大小指定滚动区域的大小它继承自它继承自AbstractTableModel抽象类而来。抽象类而来。DefaultTableModel的常用构造方法为:的常用构造方法为:DefaultTableModel(Object data , Object headerNames) 这个构造方法自动创建了一个这个构造方法自动创建了一个DefaultTableModel实例,并初始化表。实例,并初始化表。DefaultTableModel类类例例701 创建一个用于显示表格数据的框架,创建一个用于显示表格数据的框架,目前尚无表格目前尚无表格例例702 在上一例框架中添加表格,并设置在

7、上一例框架中添加表格,并设置滚动条。滚动条。调整表格列宽调整表格列宽使用使用JTable的的setAutoResizeMode()方法:方法:void setAutoResizeMode(int mode)其中参数其中参数mode必须是以下必须是以下5个之一:个之一:AUTO_RESIZE_SUBSEQUENT_COLUMENS:表示当调整:表示当调整某一列宽时,此字段之后的所有字段列宽都会跟着一起变动。某一列宽时,此字段之后的所有字段列宽都会跟着一起变动。此为系统默认值。此为系统默认值。AUTO_RESIZE_ALL_COLUMNS:表示当调整某一列宽时,:表示当调整某一列宽时,此表格上所有

8、字段的列宽都会跟着一起变动。此表格上所有字段的列宽都会跟着一起变动。AUTO_RESIZE_OFF:表示当调整某一列宽时,此表格上所:表示当调整某一列宽时,此表格上所有字段列宽都不会跟着改变。有字段列宽都不会跟着改变。AUTO_RESIZE_NEXT_COLUMN:表示当调整某一列宽时,:表示当调整某一列宽时,此字段的下一个字段的列宽会跟着改变,其余均不会变。此字段的下一个字段的列宽会跟着改变,其余均不会变。AUTO_RESIZE_LAST_COLUMN:表示当调整某一列宽时,:表示当调整某一列宽时,最后一个字段的列宽会跟着改变,其余均不会改变。最后一个字段的列宽会跟着改变,其余均不会改变。设

9、置表格每列的宽度的方法:设置表格每列的宽度的方法:利用利用JTable中的中的getColumnModel()方法取得方法取得TableColumnModel对象对象利用利用TableColumnModel接口所定义的接口所定义的getColumn()方法取得方法取得TableColumn对象(即表列)对象(即表列)利用此对象的利用此对象的setPreferredWidth()方法可以控方法可以控制字段的宽度。制字段的宽度。例例703 在上一例表格中设置每一列的宽度在上一例表格中设置每一列的宽度为列添加组合框为列添加组合框在类中定义一个组合框对象在类中定义一个组合框对象JComboBox c1

10、 = new JComboBox();在构造方法中添加项目在构造方法中添加项目c1.addItem(信息信息);为列添加组合框为列添加组合框setCellEditor()方法:用于为列添加组件,方法:用于为列添加组件,()中参数指中参数指定组件对象名定组件对象名如:为索引为如:为索引为2的列添加组合框的列添加组合框table.getColumnModel().getColumn(2).setCellEditor(new DefaultCellEditor(c1);例例704为表格添加数据修改按钮为表格添加数据修改按钮为为SimpleTable类添加两个文本框成员,类添加两个文本框成员,一个用于

11、填写要删除列的序号,另一个用一个用于填写要删除列的序号,另一个用于填写要增加列的标题。源码如下所示:于填写要增加列的标题。源码如下所示:JTextField t1,t2;在构造方法中,将上面定义的文本框连同在构造方法中,将上面定义的文本框连同两个标签添加到框架的南部,并设置背景两个标签添加到框架的南部,并设置背景色。色。定义定义4个个JButton按钮,并把它们添加到框按钮,并把它们添加到框架的北部架的北部定义定义ActionListener接口中处理按钮事件接口中处理按钮事件的方法的方法actionPerformed()DefaultTableModel类的常用方法类的常用方法getColu

12、mnCount()方法:方法:返回返回DefaultTableModel类中的列数类中的列数(表格列数表格列数)int getColumnCount()getRowCount()方法:方法:返回返回DefaultTableModel类中的行数类中的行数(表格行数表格行数)int getRowCount()addColumn()方法:方法:将一列添加到表格模型中将一列添加到表格模型中void addColumn(Object columnName)参数参数columnName表示要添加的列的标识符,它可以表示要添加的列的标识符,它可以为为nulladdRow()方法:方法:添加一行到表格模型的结

13、尾;添加一行到表格模型的结尾;void addRow(Vector rowData)参数参数rowData表示要添加的行数据表示要添加的行数据(可选可选),如果未指定,如果未指定rowData,则新行将包含,则新行将包含null值。值。removeColumn ()方法:方法:移除表格模型中指定位置上的列移除表格模型中指定位置上的列void removeRow(Object column) 参数参数column表示要移除的列的索引表示要移除的列的索引removeRow()方法:方法:移除表格模型中指定位置上的行移除表格模型中指定位置上的行void removeRow(int row) 参数参数

14、row表示要移除的行的索引表示要移除的行的索引JTable类的常用方法类的常用方法getColumnCount()方法:方法:获得列模型中的列数。注意,这可能与表模型获得列模型中的列数。注意,这可能与表模型中的列数不同。中的列数不同。int getColumnCount()getColumnName()方法:方法:获得出现在视图中指定列位置处的列名称获得出现在视图中指定列位置处的列名称String getColumnName(int column)参数参数column为在视图中指定的要查询的列。为在视图中指定的要查询的列。getRowCount()方法:方法:获得获得JTable中可以显示的行数中可以显示的行数int getRowCount()revalidate()方法:方法:对组件进行重新布局一次,用于组件被修改后对组件进行重新布局一次,用于组件被修改后 例例705 为在模块为在模块1中制作的中制作的JTable表格添表格添加加4个个JButton按钮,实现在表尾增加行,按钮,实现在表尾增加行,在表右侧增加列,删除选择的行和删除指在表右侧增加列,删除选择的行和删除指定的列的功能。定的列的功能。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号