2013-05-02 54 views
1

在我的代碼中,我有JTable填充數據庫中的數據。自動/手動設置列寬JTable與分貝數據

這是我的JPanel的構造函數:

public MainPanel(Vector<Vector<String>> films) 
{ 
    Dimension dim = Toolkit.getDefaultToolkit().getScreenSize(); 
    int width = this.getSize().width; 
    int height = this.getSize().height; 
    int x = (dim.width-width)/2; 
    int y = (dim.height-height)/2; 

    header = new Vector<String>(); 
    data = new Vector<Vector<String>>(); 
    header.add("ID"); 
    header.add("Name"); 
    header.add("Year"); 
    header.add("Genre"); 
    this.data = films; 

    this.setVisible(true); 
    this.setLocation(x, y); 
    initComponents();   
} 

,這是初始化的JTable

jTable2 = new javax.swing.JTable(); 

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); 

jTable2.setModel(new javax.swing.table.DefaultTableModel(
     data, header 
)); 

TableColumnModel tcm; 
tcm = jTable2.getColumnModel(); 

for (int i = 0; i < header.size(); i++) 
{ 
    TableColumn tc; 
    tc = tcm.getColumn(i); 
    tc.setWidth(2); 
} 

任何人可以幫助我,爲什麼不寬2還是一樣?

感謝您的回覆。

回答

0

通過繼承AbstractTableModel來創建您自己的表模型。 您可以指定行/列計數,列名稱和單元格值。 您將更好地理解表模型。