2015-08-31 172 views
1

我需要更改我的JTable的列寬度大小。請看下面用於顯示值的代碼。但我不知道如何最大化表格列的寬度。更改JTable列的寬度

請讓我知道如何配置我的代碼。

public void displayTable(JTable table){ 

    Vector columns = new Vector(getIndividual(0).chromosomeColumnCount()+1); 

    columns.add("Staff Names"); 

     for(int i=0; i<getIndividual(0).chromosomeColumnCount(); i++){ 
      columns.add(RosterManager.getDay(i)); 
     } 

     Vector data = new Vector(); 
     Vector row; 

     for(int row1=0; row1<getIndividual(0).ChromosomeRowSize(); row1++){ 

      row = new Vector(getIndividual(0).chromosomeColumnCount()); 
      row.add(RosterManager.getNurse(row1).getEmpName()); 
      for(int col=0; col<getIndividual(0).chromosomeColumnCount(); col++){ 
       row.add(getIndividual(0).getShift(row1, col).getShiftName()); 
      }  
      data.add(row); 
     } 
     DefaultTableModel tableModel = new DefaultTableModel(data, columns); 

     table.setModel(tableModel); 
} 

回答

0

setPreferredWidth(27)可以使用。在方法內部,你必須添加一個維度。

+0

從哪個對象? –

0

像這樣:

//table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); 
    TableColumn column = null; 
    for (int i = 0; i < cols.length; i++) { 
     column = table.getColumnModel().getColumn(i); 
     if(i == 0) column.setPreferredWidth(10); 
    } 
+0

如何將此代碼嵌入到我的方法中。請從哪裏幫忙? –

+0

將其添加到方法的末尾,只需將cols.length更改爲columns.size():) – lukaszLapinski

+0

什麼是cols?如何獲得這個.length()方法 –

0

林使用這種方法來改變JTable中的列的寬度。只需將其添加到displayTable()方法中即可。

your_table_name.getColumnModel().getColumn(0).setPreferredWidth(50); 
your_table_name.getColumnModel().getColumn(1).setPreferredWidth(100); 
+0

for(int col = 0; col

+0

for(int col = 0; col

+0

table.setModel(tableModel); TableColumn column = null;對於(int i = 0; i

0

JTableName.getColumn(對象標識符).setWidth(WIDTH);

JTableName.getColumn(Object identifier)將返回列並設置Width將更改其寬度。