📄 jtabledemo2.java
字号:
// 例6.6.2 JTableDemo2.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
public class JTableDemo2
{
JFrame frame;
public JTableDemo2()
{
frame = new JFrame("表格演示窗口");
Container c = frame.getContentPane();
TableModel dataModel = new ATableModel(); // 创建一个模式对象
JTable table = new JTable(dataModel); // 创建一个指定数据模式的表格
// 创建一个包含表格对象的滚动面板容器
JScrollPane jsp = new JScrollPane(table);
// 为表格设置可滚动的视图窗口的大小
table.setPreferredScrollableViewportSize(new Dimension(500,50));
c.add(jsp,BorderLayout.CENTER);// 将滚动面板对象添加到内容面板容器
frame.pack();
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e ){
System.exit(0);
}
});
}
public static void main(String[] args)
{
new JTableDemo2();
}
}
class ATableModel extends AbstractTableModel
{
String[] colHeads={"姓名","身份证号码","学历","年龄","籍贯","婚否"};
Object[][] data = {
{"张三","123456789","本科",new Integer(23),"河北",new Boolean(false)},
{"李四","987654321","硕士",new Integer(28),"山东",new Boolean(true)},
{"王五","546123789","博士",new Integer(30),"上海",new Boolean(true)},
{"赵六","498752136","硕士",new Integer(26),"河南",new Boolean(false)},
{"钱七","125897456","本科",new Integer(25),"四川",new Boolean(true)}
};
public int getColumnCount()
{
return colHeads.length;
}
public int getRowCount()
{
return data.length;
}
/* 使用getColumnName()方法设置列标题为方法返回值,若没有设置则返回默认
值,依次为A,B,C,...Z,AA,AB,AC...,在这里,使用该方法就是要把已经定义
好的列标题显示出来
*/
public String getColumnName(int col)
{
return colHeads[col];
}
// 返回表格中指定行和列的值.
public Object getValueAt(int row, int col)
{
return data[row][col];
}
// 返回字段数据类型的类名称
public Class getColumnClass(int c)
{
return getValueAt(0, c).getClass();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -