2012-05-18 72 views
0

Hy。我正在嘗試使用AbstractTableModel構建簡單的JTable,但即使使用JScrollPane,列名也不會出現。使用AbstractTableModel時不顯示列名稱

public class TableModel extends AbstractTableModel{ 
private String[] columnNames = new String[]{"#","Name","Price","Quantity","Description"}; 

public TableModel() { 
    super(); 
    System.out.println("constructor"); 

} 

public int getColumnCount() { 
    return 0; 
} 

public int getRowCount() { 
    return 0; 
} 

public Object getValueAt(int rowIndex, int columnIndex) { 
    return null; 
} 

public String getColumnName(int columnIndex) { 
    System.out.println("in"); 
    return columnNames[columnIndex]; 
} 

} 

我放置在JPanel中TABEL以下列方式:

table = new JTable(new TableModel()); 
add(new JScrollPane(table)); 

方法getColumnName,則不會調用。爲什麼?

+0

爲了更好地幫助越早,張貼[SSCCE(http://sscce.org/)。 –

回答

5

由於您的列數爲零,因此不需要獲取列名稱。

嘗試

public int getColumnCount() { 
    return columnNames.length; 
}