2009-10-21 68 views

回答

4

您需要獲取TableColumnModel的句柄,並從那裏您可以設置單個列的寬度。例如:

JTable tbl = new JTable(); 
TableColumnModel colMdl = tbl.getColumnModel(); 
colMdl.getColumn(0).setPreferredWidth(100); 
colMdl.getColumn(1).setPreferredWidth(150); 
colMdl.getColumn(2).setPreferredWidth(150); 

而且,這裏的一些有用example code展示如何「包」給定列足夠寬,以顯示在JTable所有值。我通常在我的圖形用戶界面中使用這個修改後的版本,並在第一行添加到表格時「打包」表格 - 在此之後,我允許用戶控制寬度。

+0

當我嘗試編譯,它說找不到符號 - 類TableColumnModel的 – Karen 2009-10-21 13:54:04

+0

你需要將其導入到.java文件的頂部:import javax.swing.table.TableColumnModel。 – Adamski 2009-10-21 14:03:28

+0

我有導入javax.swing。*; 它工作時,我 DefaultTableColumnModel colModel =(DefaultTableColumnModel)table.getColumnModel(); 是嗎? 當我嘗試將它設置爲像5這樣的非常小的寬度時,列再次變爲相同的寬度。那太小了? – Karen 2009-10-21 14:05:19

1

你讀過Swing教程了嗎?你所有的問題都是基本的,並在教程中介紹。

你會發現本教程有一個工作示例,可以做到這一點。在發佈問題之前,我們不應該花時間提醒您閱讀本教程。

「教人釣魚,終生吃魚,給人一條魚,吃一天。」

(然後他們回來,問了另一個問題,這就是爲什麼spoonfeeding答案是不是一個好主意。)