用SetModel怎么不能显示表头的列名
代码如下: 问题在最后面
class Rmodel extends AbstractTableModel{
String[] columnNames=new String[0];
Vector dataRows=new Vector();
public void setResultSet(ResultSet results){
try{
ResultSetMetaData metadata=results.getMetaData();
int columns=metadata.getColumnCount();
columnNames=new String[columns];
for(int i=0;i<columns;i++)
columnNames[i]=metadata.getColumnLabel(i+1);
dataRows=new Vector();
String[] rowData;
while(results.next()){
rowData=new String[columns];
for(int i=0;i<columns;i++)
rowData[i]=results.getString(i+1);
dataRows.addElement(rowData);
}
fireTableChanged(null);
}catch(SQLException sqle){
System.out.println(sqle);
}
}
public String getColumnName(int column){
return columnNames[column]==null?"No Name":columnNames[column];
}
public Object getValueAt(int row,int column){
return ((String[])(dataRows.elementAt(row)))[column];
}
public int getColumnCount(){
return columnNames.length;
}
public int getRowCount(){
if (dataRows==null)
return 0;
else
return dataRows.size();
}
}
/////////////////////////////
Rmodel rmod = new Rmodel();
rmod.setResultSet(rs);
jTable1.setModel(rmod);
jTable1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
还是不能显示表头列名,只有内部数据,我的意思是为什么好多例子里面都是要new 一个table 呢?
我用jbuilder已经把table拖进去面板里去了,直接设置为什么不可以?