JTable类的使用问题
1. 大多数采用DefaultTable定义一个defaulttable这样的一个对象,作为模板嵌入JTable来实现,从而只需操作defaulttable对象来对JTable进行添加,删除,修改等操作
DefaultTableModel defaulttable
=
new
DefaultTableModel ();
JTable jtable = new JTable(defaulttable); // 在JTable中添加defaulttable对象
/*
(注意的是调用DefaultTableModel是用到import javax.swing.table.*; JDK)
定义好对象以后下面是根据需要在defaulttable中添加数据,用到的方法是.addColumn(String str)
这是添加列方法,添加行方法为.addRow(Object[] date)
如:
*/
defaulttable.addColumn( " 学号 " );
defaulttable.addColumn( " 姓名 " );
defaulttable.addColumn( " 性别 " );
defaulttable.addColumn( " 学院 " );
/*
添加的列是作为你JTable中所需要的列数。如上例子是4列
下面再在JTable中添加行。注意添加行方法用的是数组;
*/
Object [] date = new Object[ 4 ];
// 现在想显示『3104 张三 男 计算机』这样一组数据。
date[ 0 ] = " 3104 " ;
date[ 1 ] = " 张三 " ;
date[ 2 ] = " 男 " ;
date[ 3 ] = " 计算机 " ;
defaulttable.addRow(date)
JTable jtable = new JTable(defaulttable); // 在JTable中添加defaulttable对象
/*
(注意的是调用DefaultTableModel是用到import javax.swing.table.*; JDK)
定义好对象以后下面是根据需要在defaulttable中添加数据,用到的方法是.addColumn(String str)
这是添加列方法,添加行方法为.addRow(Object[] date)
如:
*/
defaulttable.addColumn( " 学号 " );
defaulttable.addColumn( " 姓名 " );
defaulttable.addColumn( " 性别 " );
defaulttable.addColumn( " 学院 " );
/*
添加的列是作为你JTable中所需要的列数。如上例子是4列
下面再在JTable中添加行。注意添加行方法用的是数组;
*/
Object [] date = new Object[ 4 ];
// 现在想显示『3104 张三 男 计算机』这样一组数据。
date[ 0 ] = " 3104 " ;
date[ 1 ] = " 张三 " ;
date[ 2 ] = " 男 " ;
date[ 3 ] = " 计算机 " ;
defaulttable.addRow(date)
//刷新列表,可不要
jtable.setModel(defaulttable);
defaulttable.fireTableDataChanged();
defaulttable.fireTableDataChanged();
2. 也可以直接对JTable 初始化
final
String[] colHeads
=
{ "Name", "IP", "OS" }
;
final Object[][] data = { { "Lin Song", "87934656", "22" },
{ "Jin Tao", "67843522", "32" },
{ "H.J.King", "67232432", "56" },
{ "Jaychou Low", "87934810", "22" },
{ "Ken", "76908435", "32" }, { "Martin", "87957547", "43" },
{ "Jill Bert", "87964673", "25" },
{ "Ling Feng", "56734656", "28" },
{ "H.J.King", "67232432", "56" },
{ "Jaychou Low", "87934810", "22" },
{ "Ken", "76908435", "32" }, { "Lin Song", "87934656", "22" },
{ "Jin Tao", "67843522", "32" },
{ "H.J.King", "67232432", "56" },
{ "Jaychou Low", "87934810", "22" },
{ "Ken", "76908435", "32" }, { "Martin", "87957547", "43" },
} ;
jt = new JTable(data, colHeads) {
public boolean isCellEditable(int row,int column){
return false;
}
} ;
final Object[][] data = { { "Lin Song", "87934656", "22" },
{ "Jin Tao", "67843522", "32" },
{ "H.J.King", "67232432", "56" },
{ "Jaychou Low", "87934810", "22" },
{ "Ken", "76908435", "32" }, { "Martin", "87957547", "43" },
{ "Jill Bert", "87964673", "25" },
{ "Ling Feng", "56734656", "28" },
{ "H.J.King", "67232432", "56" },
{ "Jaychou Low", "87934810", "22" },
{ "Ken", "76908435", "32" }, { "Lin Song", "87934656", "22" },
{ "Jin Tao", "67843522", "32" },
{ "H.J.King", "67232432", "56" },
{ "Jaychou Low", "87934810", "22" },
{ "Ken", "76908435", "32" }, { "Martin", "87957547", "43" },
} ;
jt = new JTable(data, colHeads) {
public boolean isCellEditable(int row,int column){
return false;
}
} ;