【作者:孟祥月 博客:http://blog.csdn.net/mengxiangyue】
最近做项目的时候,需要用到table显示数据库中的数据,但是曾经没有学过Jtable的使用,所以只能自己找资料学习。下面把Jtable的简单使用分享一下。
在Java API中对于Jtable有几个构造方法,推荐使用带TableModel参数的构造方法。下面是第一个程序,带有注释基本都可以看懂。
上面的代码创建了一个不可编辑的表格,注意在设置表格的不可以编辑的时候,我们可以只是设置一列、一行或者一个单元格,只要使对应的位置返回值为false就可以了。import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel; public class Table1 extends JFrame { JTable table; JScrollPane pane; TableModel model; //数据 Object[][] data = {{"张三","男",3}, {"李四","男",4}, {"小红","女",5}}; //列名 Object[] clomnName = {"姓名","性别","年龄"}; Table1() { super("表格测试程序"); init(); } private void init() { //初始化TableModel,使用数据data,列名clomnName model = new DefaultTableModel(data, clomnName) {//设置表格中的数据不可以编辑 public boolean isCellEditable(int r,int c) { return false; } }; //使用上面的model作为参数初始化JTabel table = new JTable(model); //初始化JScrollPane pane = new JScrollPane(); //将table添加到JScrollPane上 这里使用下面的第一种方法不能添加 //使用第一个先获得JViewPort对象,然后再添加 // pane.add(table); pane.getViewport().add(table); this.getContentPane().add(pane); setSize(400,300);//设置Frame的大小 setResizable(false);//设置窗口不可以调整大小 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//退出时关闭窗口 setVisible(true);//设置窗口显示出来 } public static void main(String[] args) { new Table1(); } }