Java详解表格的创建与使用流程
短信预约 -IT技能 免费直播动态提醒
Java 的表格
表格是一个由多行,多列组成的二维显示区。Swing的JTable以及相关类提供了对这种表格的支持,程序既可以使用简单的代码创建出表格来显示二维数据,也可以开发出功能丰富的表格,还可以为表格制定各种显示外观,编辑特性。
JTable的构造函数
方法描述 | 功能说明 |
---|---|
JTable() | 建立一个新的JTable,并使用系统默认的Model |
JTable(int numRows,int numColumns) | 建立一个具有行列的空表格,使用的是DefaultTableModel |
JTable(Object rowDate,Object columnNames) | 建立一个显示二维数组数据的表格,且可以显示列的名称 |
JTable(TableModel dm) | 建立一个Jtable,有默认的字段模式以及选择模式,并设置数据模式 |
JTable(TableModel dm,TableColumnModel cm) | 建立一个Jtable,设置数据模式或字段模式,并有默认的选择模式 |
JTable(TableModel dm,TableColumnModel cm,ListSelectionModel sm) | 建立一个Jtable,设置数据模式,字段模式,和选择模式 |
JTable(Vector rowDate,Vector columnNames) | 建立一个以Vector为输入来源的数据表格,可显示行的名称 |
TableModel是用来存储列表数据的,数据包括表头的标题数据与表体的实体数据,TableModel为功能接口,通常使用具体的实现类DefaTableModel。
public DefaultTableModel(Object[][]tbody,Object[]thead)
表体:是一个Object类型的二维数组,由于多态的自动类型提升,可以直接使用String来存储数据。
表头:是一个Object类型的一维数组,可以直接用String[]来存储所有的标题字符串。
表格的创建
package Swing;
import javax.swing.*;
public class BiaoGe {
//创建一个JFrame窗口
JFrame jf=new JFrame("简单表格");
//声明JTable类型的变量table
JTable table;
//定义一维数组作为标题
Object[] columnTitle={"姓名","年龄","性别"};
Object[][] tableDate={
new Object[] {"去病",20,"男"},
new Object[] {"波斯客",25,"男"},
new Object[] {"李小白",20,"男"},
new Object[] {"张小骞",20,"男"},
new Object[] {"唐小妃",20,"男"},
new Object[] {"卫小青",20,"男"},
new Object[] {"韩小信",20,"男"}
};
//使用JTable对象创建表格
public void init(){
//用二维数组和一维数组来创建一个JTable对象
table=new JTable(tableDate,columnTitle);
//将JTable对象放在JScrollPane中,并将该JScrollPane放在窗口中显示出来
jf.add(new JScrollPane(table));
//设置自适应JFrame窗口的大小
jf.pack();
//单击关闭按钮时默认为退出
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setVisible(true);
}
public static void main(String[] args) {
new BiaoGe().init();
}
}
小结
以上就是我对于Java中JTable构造函数和创建Java表格的理解,学会使用表格,表格的数据可以根据需求的动态变化而去改变,可以在构造方法中增加表格,设置表格的数据模型,添加删除按钮并监听单击事件等很多事件中有重要作用。
到此这篇关于Java详解表格的创建与使用流程的文章就介绍到这了,更多相关Java表格内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341