JAVAWEb从入门到精通利用JTable类直接创建表格
- 格式:pptx
- 大小:461.37 KB
- 文档页数:1
java中jtable的用法一、JTable简介JTable是Java Swing包中的一个组件,用于在图形用户界面(GUI)中显示和编辑表格数据。
它可以显示任何类型的数据,包括文本、数字、日期和图像等。
二、创建JTable1. 创建一个空的JTable可以通过以下代码创建一个空的JTable:```JTable table = new JTable();```2. 从二维数组创建JTable可以通过以下代码从二维数组创建一个简单的JTable:String[][] data = {{"John", "Doe"}, {"Jane", "Doe"}};String[] columnNames = {"First Name", "Last Name"};JTable table = new JTable(data, columnNames);```3. 从TableModel创建JTable可以通过实现TableModel接口并使用它来创建一个定制的TableModel,然后将其传递给JTable构造函数来创建一个自定义的JTable。
4. 从数据库中获取数据并创建JTable可以通过使用Java数据库连接(JDBC)API与数据库进行交互,并将结果集转换为TableModel,然后将其传递给JTable构造函数来从数据库中获取数据并创建一个自定义的JTable。
三、设置表格属性1. 设置表头可以使用以下代码设置表头:```String[] columnNames = {"First Name", "Last Name"};table.setColumnIdentifiers(columnNames);```2. 设置表格行高和列宽可以使用以下代码设置表格行高和列宽:```table.setRowHeight(30);table.getColumnModel().getColumn(0).setPreferredWidth(100); ```3. 设置表格背景色和前景色可以使用以下代码设置表格背景色和前景色:```table.setBackground(Color.white);table.setForeground(Color.black);```4. 设置表格字体可以使用以下代码设置表格字体:```Font font = new Font("Arial", Font.PLAIN, 14);table.setFont(font);```5. 设置表格边框可以使用以下代码设置表格边框:```Border border = BorderFactory.createLineBorder(Color.black); table.setBorder(border);```四、渲染器和编辑器1. 渲染器渲染器用于将单元格中的值呈现为用户界面上的文本或图像。
1.1跟我学Java Swing GUI组件技术及应用实例——JTable表格组件及应用实例1.1.1表格控件JTable1、JTable表格控件的主要功能JTable顾名思义就是一个将数据以表格显示的组件,它提供以行和列的方式来显示数据,并且可以拖动列。
如下示图为应用JTable表格控件所创建出的数据表格。
JTable的数据选项不仅仅是可以显示字符串,还可以显示Checkbox选择框、下拉列表框或者图片等内容。
如下为Sun 公司的Swing 教程中的TableDialogEditoDemo 应用程序的执行结果示图,在该示例的数据表格中显示Checkbox选择框、下拉列表框和图片等内容。
2、JTable类的API功能说明(1)JTable类的API功能说明如下示图为JDK API文档中对JTable类的API功能说明的相关信息。
如果需要对数据表格中的表头数据列和数据单元格中的数据列进行定制,则需要通过继承封装表头数据列JTableHeader类或者继承封装数据列的TableColumn类。
如下为JTableHeader类和TableColumn类的功能说明。
(2)表头数据列JTableHeader类的功能说明(3)数据列TableColumn类的功能说明TableColumn 类封装表示JTable中数据列的所有属性,如宽度、大小可调整性、最小和最大宽度。
3、JTable表格控件中的数据可以以多种不同的方式被选中(1)选中某一数据行(2)选中连续的多行数据行(3)选中不连续的多行数据行4、JTable类的构造函数定义可以通过JTable(Object[][] rowData, Object[] columnNames)形式的构造方法创建出数据表格组件,该JTable组件将用来显示一个二维数组rowData 中的值(它是一个行数组),其列名称为columnNames所代表的数组。
JTable类的其它形式的构造函数定义如下:5、JTable 组件中的表示表格数据的数据结构(1)TableModel接口的功能定义由于Java Swing采用了MVC的设计,所以JTable不是用来存放数据的,它只是用来作为视图显示,而真正用来存储和维护数据的是TableModel这个接口的实现类。
java jtable用法JTable是Java Swing库中的一个组件,用于将数据以表格的形式展示出来。
JTable的用法如下:1.创建JTable对象:可以通过传入一个二维数组或者实现TableModel接口的数据模型来创建JTable对象。
2.设置表头:通过调用getTableHeader()方法获取表头对象,并设置表头的标题和样式。
3.设置表格数据:将数据设置到表格中,可以通过调用setModel()方法来设置TableModel,也可以通过调用setValueAt()方法逐个设置表格中的值。
4.设置表格样式:可以通过调用setDefaultRenderer()方法来设置单元格的渲染器,调用setDefaultEditor()方法来设置单元格的编辑器,以及调用setRowHeight()方法来设置行高等。
5.添加JTable到容器中:将JTable添加到容器中显示出来。
拓展:JTable还有一些其他常用的功能,例如:1.表格排序:可以通过调用setAutoCreateRowSorter()方法来开启表格排序功能,或者通过设置RowSorter来自定义排序规则。
2.表格选择:可以通过调用setSelectionMode()方法来设置表格的选择模式,可以选择单个单元格、单个行、多个行等。
3.表格事件:可以监听表格的事件,例如单元格的点击事件、单元格的编辑事件等,通过添加事件监听器来实现相应的逻辑处理。
4.表格导出:可以将表格中的数据导出为Excel、CSV等格式,通过调用相应的API来实现数据导出功能。
总之,JTable是一个非常强大的表格组件,可以用于展示和处理大量的数据,通过灵活的设置和拓展,可以实现各种复杂的表格功能。
java jtable用法Java JTable用法一、概述JTable是Java Swing库中的一个控件,用于在图形用户界面中显示和编辑表格数据。
它提供了丰富的功能和灵活的配置选项,使开发人员能够轻松地创建和管理数据表格。
二、创建JTable对象1.构造函数:可以使用JTable的构造函数来创建一个空的表格:JTable table = new JTable();2.数据模型:可以通过设置数据模型来创建一个包含指定数据的表格:String[][] data = {{"John", "Doe"}, {"Jane", "Smith "}, {"Bob", "Johnson"}};String[] columnNames = {"First Name", "Last Name"}; JTable table = new JTable(data, columnNames);三、设置表格属性1.表头:可以使用setTableHeader()方法来设置表格的表头:JTableHeader header = ();();(new Font("Arial", , 16));(header);2.行高:可以使用setRowHeight()方法来设置表格的行高度:(30);3.列宽:可以使用setColumnWidth(int column, int width)方法来设置指定列的宽度:().getColumn(0).setPreferredWidth(100);四、添加行和列1.添加行:可以使用数据模型的addRow(Object[] rowData)方法来添加一行数据:DefaultTableModel model = (DefaultTableModel) (); (new Object[]{"Tom", "Brown"});2.添加列:可以使用数据模型的addColumn(Object columnName)方法来添加一列数据:("Age");五、单元格编辑1.编辑模式:可以使用setCellEditor()方法来设置一个单元格编辑器:DefaultCellEditor editor = new DefaultCellEditor(ne w JTextField());().getColumn(1).setCellEditor(editor);2.单元格监听:可以使用addCellEditorListener()方法来添加一个单元格编辑器监听器:(new CellEditorListener() {@Overridepublic void editingStopped(ChangeEvent e) {// 编辑完成后的处理}@Overridepublic void editingCanceled(ChangeEvent e) {// 编辑取消后的处理}});六、样式和渲染1.颜色:可以使用自定义的继承自DefaultTableCellRenderer的渲染器来设置单元格的前景色和背景色:class MyRenderer extends DefaultTableCellRenderer { public Component getTableCellRendererComponent(JTabl e table, Object value, boolean isSelected, boolean hasFo cus, int row, int column) {Component component = (table, value, isSelected,hasFocus, row, column);if (row % 2 == 0) {();} else {();}return component;}}// 设置渲染器().getColumn(1).setCellRenderer(new MyRenderer());2.字体:可以使用自定义的渲染器来设置单元格的字体:().getColumn(0).setCellRenderer(new DefaultTableCel lRenderer() {public Component getTableCellRendererComponent(JTabl e table, Object value, boolean isSelected, boolean hasFo cus, int row, int column) {Component component = (table, value, isSelected, hasFocus, row, column);(new Font("Arial", , 14));return component;}});以上是Java JTable的一些常用用法和详细讲解。
swing jxtreetable用法Swing JXTreeTable是基于Java Swing的扩展组件,提供了一个带有树形结构的表格控件。
JXTreeTable具有JTable的所有功能以及额外的树形结构功能,可以同时展示表格和树状结构的数据。
本文将详细介绍JXTreeTable的用法,包括创建和初始化、添加数据、自定义表格和树状结构、以及其他常用操作等。
1. 创建和初始化JXTreeTable首先,创建一个JXTreeTable实例需要导入相应的包和类。
JXTreeTable位于swingx包中,可通过以下代码导入:import org.jdesktop.swingx.JXTreeTable;然后,可以通过构造函数创建JXTreeTable实例:JXTreeTable treeTable = new JXTreeTable();如果需要传递表格数据模型和树状结构数据模型,可以使用以下构造函数:TreeTableModel treeT ableModel = new MyTreeTableModel(root); 自定义树状结构数据模型TableModel tableModel = new DefaultTableModel(data, columnNames); 表格数据模型JXTreeTable treeTable = new JXTreeTable(treeTableModel, tableModel);在创建JXTreeTable实例后,可以通过以下代码设置表格的可见行数和列数:treeTable.setVisibleRowCount(10); 可见行数为10treeTable.setVisibleColumnCount(5); 可见列数为52. 添加数据添加数据到JXTreeTable可以使用默认的TableModel类或者自定义的TableModel类。
如果使用默认的TableModel类,可以使用以下代码添加行数据:DefaultTableModel model = (DefaultTableModel)treeTable.getTableModel();model.addRow(new Object[] { "Data 1", "Data 2", "Data 3" });如果需要添加树状结构的数据,可以使用以下代码:TreeTableModel treeModel = (TreeTableModel)treeTable.getTreeTableModel();treeModel.insertNodeInto(node, parent, index);其中,node是要插入的节点,parent是父节点,index是要插入的位置。
javajtable用法1. 创建JTable对象:要创建一个JTable对象,可使用其构造函数之一、以下是一个示例:JTable table = new JTable(;2.设置表头:表格的第一行通常称为表头,用于显示列名。
要设置表头,可以使用JTable的getTableHeader(方法和setDefaultRenderer(方法。
下面是一个示例:JTableHeader tableHeader = table.getTableHeader(;tableHeader.setDefaultRenderer(new MyTableHeaderRenderer(); 3.添加到容器:将JTable添加到显示表格的容器中。
例如,将它添加到一个面板中:JPanel panel = new JPanel(;panel.add(table);4.设置数据模型:JTable需要一个数据模型来存储和管理表格数据。
默认情况下,JTable使用DefaultTableModel作为其数据模型。
以下是设置数据模型的示例:DefaultTableModel model = new DefaultTableModel(;table.setModel(model);5.填充表格数据:可以通过添加行和列的方式来填充表格数据。
以下是一个示例:model.addRow(new Object[]{"John Doe", "24", "Male"});model.addRow(new Object[]{"Jane Smith", "30", "Female"}); 6.选择行和列:可以使用JTable的setRowSelectionAllowed(和setColumnSelectionAllowed(方法来允许或禁止行或列的选择。
Java中JT able的用法Listing A包含了一个简单示例的代码,这个示例会说明常用JTab le的行为。
用户能够更改J T able的布局、拖放它的栏,或者通过拖动标题的分隔线来改变其大小。
这些列被保存在一个String数组里:String[] columnN ames = {"Product","Numberof Boxes","Price"};数据被初始化并保存在一个二维的对象数组里:Object[][] data ={{"Apples", new Integer(5),"5.00"},{"Oranges", new Integer(3),"6.00"},{"Pears", new Integer(2),"4.00"},{"Grapes", new Integer(3),"2.00"},};JTable是使用data和columnNames构成的:JTabletable = new JTable(data, columnN ames);一、查看JTableJTable的高度和宽度按照下面的方法来设定:table.setPref erredS crolla bleVie wportS ize(new Dimension(300, 80));如果JTable的一个列或者JT able窗口自身的大小被重新确定,那么其他列会被相应的缩小或者放大,以适应新的窗口。
使用setAu toResizeMode()方法就能够控制这种行为:table.setAuto Resize Mode(int mode);mode整数字段可能的值有:AUTO_RE SIZE_O FFAUTO_RE SIZE_N EXT_CO LUMNAUTO_RE SIZE_S UBSEQU ENT_CO LUMNSAUTO_RE SIZE_L AST_CO LUMNAUTO_RE SIZE_A LL_COL UMNS二、表格的缺省值单元格内方格坐标线的缺省颜色是Colo r.gray。
JAVAJTable的使⽤JTable是⼀个表格组件,对JTable进⾏实例化时有多种⽅式,我个⼈⽐较喜欢⽤两个链表集合进⾏传参。
实例没连数据库实例1package com.beekc.www;2import java.awt.*;3import java.util.*;4import javax.swing.*;56//继承JFrame7public class Jtable extends JFrame {89//定义组件10 JTable jTable = null;11 JScrollPane jScrollPane = null;1213//定义JTable的对象14 Vector rowData,columnNames;1516//定义⼀⾏数据的对象17 Vector line1;1819public static void main(String[] args) {20 Jtable jTable = new Jtable();21 }2223//构造函数24public Jtable()25 {26//设置表格类⽬27 columnNames = new Vector();28 columnNames.add("学号");29 columnNames.add("姓名");30 columnNames.add("籍贯");3132//设置表格数据33 rowData = new Vector();34 line1 = new Vector();35 line1.add("001");36 line1.add("孙悟空");37 line1.add("花果⼭");38 rowData.add(line1);3940 line1 = new Vector();41 line1.add("002");42 line1.add("猪⼋戒");43 line1.add("天空");44 rowData.add(line1);4546 line1 = new Vector();47 line1.add("003");48 line1.add("沙悟净");49 line1.add("⼤海");50 rowData.add(line1);5152 line1 = new Vector();53 line1.add("004");54 line1.add("唐三藏");55 line1.add("长安");56 rowData.add(line1);5758//⽣成表格59 jTable = new JTable(rowData,columnNames);60 jScrollPane = new JScrollPane(jTable);6162//添加组件63this.add(jScrollPane);6465//窗体设置66this.setTitle("学⽣管理系统");67this.setLocation(200,200);68this.setSize(280,200);69this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);70this.setVisible(true);717273 }7475 }连接数据库实例1package com.beekc.www;2import java.awt.*;3import java.sql.*;4import java.util.*;5import javax.swing.*;67//继承JFrame8public class Student extends JFrame {910//定义组件11 JTable jTable = null;12 JScrollPane jScrollPane = null;1314//定义JTable的对象15 Vector rowData,columnNames;1617//定义⼀⾏数据的对象18 Vector line1;1920//定义数据库对象21 Connection ct = null;22 PreparedStatement ps = null;23 ResultSet rs = null;2425public static void main(String[] args) {26 Student jTable = new Student();27 }2829//构造函数30public Student()31 {32//设置表格类⽬33 columnNames = new Vector();34 columnNames.add("学号");35 columnNames.add("姓名");36 columnNames.add("籍贯");3738//设置表格数据39 rowData = new Vector();4041try{42//1.加载驱动43 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");44//2.得到连接45 ct = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=beekc","sa","admin.."); 46//3.创建介质⽅式47 ps = ct.prepareStatement("select * from stu");4849//4.执⾏50 rs = ps.executeQuery();5152while (rs.next())53 {54 line1 = new Vector();55 line1.add(rs.getString(1));56 line1.add(rs.getString(2));57 line1.add(rs.getString(3));58 rowData.add(line1);59 }6061 }catch (Exception e){62 e.printStackTrace();63 }finally {6465 }6667//⽣成表格68 jTable = new JTable(rowData,columnNames);69 jScrollPane = new JScrollPane(jTable);7071//添加组件72this.add(jScrollPane);7374//窗体设置75this.setTitle("学⽣管理系统");76this.setLocation(200,200);77this.setSize(280,200);78this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 79this.setVisible(true);80 }81 }。
java jtable用法(一)Java JTable的用法JTable简介JTable是Java Swing库中的一个组件,用于显示和编辑表格数据。
它可以按照行和列的形式展示数据,并支持用户交互操作。
在本文中,我们将介绍一些JTable的常见用法和技巧。
创建JTable要创建一个JTable,我们首先需要创建一个TableModel。
TableModel是一个数据模型,用于存储和管理表格中的数据。
以下是创建JTable的步骤:1.创建一个二维数组或者一个实现TableModel接口的自定义类。
2.实例化DefaultTableModel类,并传入之前创建的数据数组或者自定义TableModel类的实例。
3.将DefaultTableModel实例传入JTable的构造方法中,创建JTable对象。
// 创建数据数组Object[][] data = {{"John", 25, "USA"},{"Alice", 30, "Canada"},{"Bob", 35, "UK"}};// 创建列名数组String[] columnNames = {"Name", "Age", "Country"};// 创建DefaultTableModelDefaultTableModel model = new DefaultTableModel(data, co lumnNames);// 创建JTableJTable table = new JTable(model);自定义JTable外观JTable提供了许多方法和属性,用于自定义表格的外观。
下面列举了几个常用的用法:设置表格行高使用方法可以设置表格的行高。
默认情况下,行高是根据表格内容的实际高度自动调整的。
1.JTable与TableModel (2)1.TableModel与JTable的关系: (2)2.TableModel实践: (3)3.使用JTable+TableModel展示java中的数据对象: (5)2.JTable展示方式的美化: (8)1.设置表格的宽度和高度: (8)2.要显示表头: (8)3.新加列,将列设为下拉框: (9)4.表格排序: (9)3. JTable事件响应和项目设想 (9)1.JTable与TableModel1.TableModel与JTable的关系:前面,我们己学会在界面上加入一个简单的JTable对象:JTable table=new JTable(3,5);这段代码即可创建一个三行五列的表格用以显示在界面上;在具体的应用中,我们肯定是要让JTable显示我们自己定义的数据,比如将上例中的UserInfo对象或UserBlog对象显示到表格中,那就必须定制JTable对象所要使用的javax.swing.table.TableModel对象,在开始前,我们先理解javax.swing.table.TableModel 和JTable之间的关系:模特与衣服之间的关系:JTable对象TableModel对象简单的说,JTable只是一个界面,主要负责显示功能,但JTable对象具体显示多少行多少列,甚示每行每列中显示什么类型的数据,JTable中的单元格是否可编辑,编辑之后怎么办…关于数据提供和数据操作的实现,都是由这个JTable对象的TableModel对象所负责的;反向而言,当JTable对象界面的数据被改动时,JTable会自动调用自己模型中的方法将改动反映到模型中。
说了这么多,我们来看TableModel到底是什么东东----它是一个接口定义,源码说明如下://通过调用JTable对象的setModel方法,传入实现了TableModel接口类的对象public interface TableModel{public int getRowCount();//决定表格上显示多少行public int getColumnCount();//表格上显示多少列//得到某一列的列名,columnIndex:列的序号,从0开始public String getColumnName(int columnIndex);//得到某一列的数据类型,columnIndex:列的序号,从0开始public Class<?> getColumnClass(int columnIndex);//某一单元格在界面上是否可直接编辑,rowIndex:行号,columnIndex:列号,从0开始public boolean isCellEditable(int rowIndex, int columnIndex);//具体的JTable在显示时,调用这个方法取得每一个一单元格的值public Object getValueAt(int rowIndex, int columnIndex);//如果表格可编辑,表格对象将调用这个方法将改变后的值反映到它的model对象中//aValue代表修改后的值,rowIndex,columnIndex表示所在的行列索引。
JTable是JavaSwing库的一部分,用于创建包含数据行和列的表。
它通常用于显示来自数据库或其他数据源的数据。
要使用JTable,首先需要创建一个表模型,该模型将为表提供数据。
这可以通过扩展AbstractTableModel类并实现其方法来实现。
一旦有了表模型,就可以创建JTable对象并使用setModel()方法设置模型。
然后,您可以将表添加到容器(例如JScrollPane)并在屏幕上显示它。
下面是一个使用数据创建简单表的示例:
1.String[] columnNames = {"Name", "Age", "Gender"};
2.Object[][] data = {
3. {"John", 30, "Male"},
4. {"Sara", 25, "Female"},
5. {"Mike", 35, "Male"}
6.};
7.
8.DefaultTableModel model = new DefaultTableModel(data, colum
nNames);
9.JTable table = new JTable(model);
10.J ScrollPane scrollPane = new JScrollPane(table);
11.f rame.add(scrollPane, BorderLayout.CENTER);
您可以使用许多其他属性(如列宽、行高等)自定义JTable。
Java中怎么创建表格-创建方式-创建操作Java表格是最常用的数据统计组件之一,其形式是由多行和多列组成的二维表格,其创建方式有这些:1.使用数组创建;2.使用向量来创建表格。
以下是关于Java中怎么创建表格的具体介绍。
一、表格创建〔java〕x.swing.JTable类所创建的对象是一个表,可以使用以下两种方法来创建。
1. 使用数组创建使用JTable类的以下构造方法可以依据指定的列名数组和数据数组创建表格。
JTable(Object[][] rowData, Object[] columnNames)(1)rowData:封装表格数据的数组。
(2)columnNames:装表格列名的数组。
在使用表格时,通常会将其添加到滚动面板中,然后将滚动面板添加到相应的位置,实现表格的显示。
2. 使用向量来创建表格在JTable类中还提供了以下构造方法,使用指定的表格列名向量和表格数据向量创建表格。
JTable(Vector rowData, Vector columnNames)(1)rowData:封装表格数据的向量。
(2)columnNames:封装表格列名的向量。
二、定制表格一旦创建了表,就必须要做一些定义来适应特定的使用状况。
默认状况下,一个表格可以通过双击表格中的单元格进行编辑。
如果你不想提供这个功能,你可以通过重写JTable类的isCellEditable(int row, int column)方法来禁用它。
默认状况下,该方法返回boolean型值true,表示指定的单元格可以被编辑,如果返回false,则表示不能被编辑。
如果表格只有几列,通常不必须要表格列的可重新排列功能。
如果表格的列较多,就可以把一些重要的列移动到表格前几列的位置。
这样能确保对表格中重要信息的浏览。
表格列的移动可以通过javax.swing.table.JTableHeader类的setReorderingAllowed(boolean reorderingAllowed)方法来实现。
java从⼊门到精髓-Swing表格JTable利⽤tableModel添加⾏修改⾏删除⾏import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JButton;import javax.维护表格public class JTableDefaultTableModelTest extends JFrame{ private DefaultTableModel tableModel; //表格模型对象 private JTable table; private JTextField aTextField; private JTextField bTextField []tableVales={{"A1","B1"},{"A2","B2"},{"A3","B3"},{"A4","B4"},{"A5","B5"}}; //数据 tableModel = new DefaultTableModel(tableVales,columnNames); table = new JTable(tableModel); JScrollPane scrollPane 序: //table.setRowSorter(new TableRowSorter(tableModel)); table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); //单选 table.addMouseListener(new MouseAdapter(){ //⿏标事件引 Object oa = tableModel.getValueAt(selectedRow, 0); Object ob = tableModel.getValueAt(selectedRow, 1); aTextField.setText(oa.toString()); //给⽂本框赋值 bTextField.setText(ob.toString()); } }); scrollPane.setViewportView(table); final JPanel panel = new JPanel(); getContentPane().add(panel,BorderLayout.SOUTH); panel.add(new 加"); //添加按钮 addButton.addActionListener(new ActionListener(){//添加事件 public void actionPerformed(ActionEvent e){ String []rowValues = {aTextField.getText(),bTextField.getText()};1 aTextField.setText("A"+rowCount); bTextField.setText("B"+rowCount); } }); panel.add(addButton); final JButton updateButton = new JButton("修改"); //修改按钮 updateB ⾏ { //修改指定的值: tableModel.setValueAt(aTextField.getText(), selectedRow, 0); tableModel.setValueAt(bTextField.getText(), selectedRow, 1); //table.setValueA 件 public void actionPerformed(ActionEvent e){ int selectedRow = table.getSelectedRow();//获得选中⾏的索引 if(selectedRow!=-1) //存在选中⾏ { tableModel.removeRow(se generated method stub JTableDefaultTableModelTest jTableDefaultTableModelTest = new JTableDefaultTableModelTest(); jTableDefaultTableModelTest.setVisible(true); }}。
类层次结构图:ng.Objectponent--java.awt.Container--javax.swing.JComponent--javax.swing.JTabel在使用JTable以前,我们先看一下它的构造函数有哪些,以及应该如何使用:JTabel构造函数:JTable():建立一个新的JTables,并使用系统默认的Model.JTable(int numRows,int numColumns):建立一个具有numRows行,numColumns列的空表格,使用的是DefaultTableModel.JTable(Object[][] rowData,Object[][] columnNames):建立一个显示二维数组数据的表格,且可以显示列的名称。
JTable(TableModel dm):建立一个JTable,有默认的字段模式以及选择模式,并设置数据模式。
JTable(TableModel dm,TableColumnModel cm):建立一个JTable,设置数据模式与字段模式,并有默认的选择模式。
JTable(TableModel dm,TableColumnModel cm,ListSelectionModel sm):建立一个JTable,设置数据模式、字段模式、与选择模式。
JTable(Vector rowData,Vector columnNames):建立一个以Vector为输入来源的数据表格,可显示行的名称。
我们先以Array构造方式,说明如何利用JTable来建立一个简单的表格:import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.util.*;public class SimpleTable{public SimpleTable(){JFrame f=new JFrame();Object[][] playerInfo={{"阿呆",new Integer(66),new Integer(32),new Integer(98),new Boolean(false)}, {"阿呆",new Integer(82),new Integer(69),new Integer(128),new Boolean(true)}, };String[] Names={"姓名","语文","数学","总分","及格"};JTable table=new JTable(playerInfo,Names);table.setPreferredScrollableViewportSize(new Dimension(550,30));JScrollPane scrollPane=new JScrollPane(table);f.getContentPane().add(scrollPane,BorderLayout.CENTER);f.setTitle("Simple Table");f.pack();f.show();f.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {System.exit(0);}});}public static void main(String[] args){SimpleTable b=new SimpleTable();}}表格由两部份组成:分别是行标题(Column Header)与行对象(Column Object).利用JTable所提供的getTableHeader()方法取得行标题。