JTable是用来处理数据在表格的视图显示,但是并不包含数据或缓存数据,同时JTable默认也允许用户去编辑表格数据。
![JTable构造方法](https://img-blog.csdn.net/20160109233151043)
以 JTable(Object[][] rowData, Object[] columnNames)来生成第一个例子:
“`
package com.acconsys.swing.chapter14;
import java.awt.BorderLayout;
/**
* 展示创建表格的方法, 创建表格的方法主要是通过JTable(Object[][] rowData,Object[][]
* columnNames)来创建两个数组作为创建表格的两个参数
*
* @author burns
*
*/
public class Test1 {
public Test1() {
JFrame f = new JFrame();
Object[][] playerInfo = {
// 创建表格中的数据
{ "王鹏", new Integer(91), new Integer(100), new Integer(191),
new Boolean(true) },
{ "朱学莲", new Integer(82), new Integer(69), new Integer(151),
new Boolean(true) },
{ "梅婷", new Integer(47), new Integer(57), new Integer(104),
new Boolean(false) },
{ "赵龙", new Integer(61), new Integer(57), new Integer(118),
new Boolean(false) },
{ "李兵", new Integer(90), new Integer(87), new Integer(177),
new Boolean(true) }, };
// 创建表格中的横标题
String[] Names = { "姓名", "语文", "数学", "总分", "及格" };
// 以Names和playerInfo为参数,创建一个表格
JTable table = new JTable(playerInfo, Names);
// 设置此表视图的首选大小
table.setPreferredScrollableViewportSize(new Dimension(550, 100));
// 将表格加入到滚动条组件中
JScrollPane scrollPane = new JScrollPane(table);
f.getContentPane().add(scrollPane, BorderLayout.CENTER);
// 再将滚动条组件添加到中间容器中
f.setTitle("表格测试窗口");
f.pack();
f.setVisible(true);
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public static void main(String[] args) {
Test1 t = new Test1();
}
}
注意:
1.此表格右边滚动条会自动添加,当数据显示不全时,会显示,否则如图会显示。
2.默认表格数据是可以编辑的,当时不能保存。
3.// 设置此表视图的首选大小
table.setPreferredScrollableViewportSize(new Dimension(550, 100));
这块代码是执行时在界面显示的时候,显示的大小,
4.通常界面打开之后要关闭有2中处理方式一种是如上代码,给JFrame加监听器:1.
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
2.
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);5.f.pack()方法很重要,这里如果把它删除,那么,// 设置此表视图的首选大小的那块代码设置就没有用了,
6:这个例子用JTable的构造方法