2010-10-29 101 views
0

我想要編輯某列的單元格的內容在我的JTable與組合框。因此,我只是使用JTable官方Java教程中的代碼(http://download.oracle.com/javase/tutorial/uiswing/components/table.html)。 相關的代碼最終看起來像這樣:的JComboBox在JTable中單元格沒有顯示出來

tableModel = new NetworkTableModel(columnNames,0,0); 
networkTable = new JTable(tableModel); 
.... 
TableColumn sendingColumn = networkTable.getColumnModel().getColumn(3); 
JComboBox sendingBox = new JComboBox(); 
sendingBox.addItem("Sending"); 
sendingBox.addItem("Receiving"); 
sendingColumn.setCellEditor(new DefaultCellEditor(sendingBox)); 

問題是,當我在該列的組合框沒有出現單擊單元格。我完全能夠編輯單元格,但只能通過鍵入它們。爲什麼ComboBox不顯示?

回答

0

問題解決了。

雛,因爲我,我卻始終設置爲我表一個完整的新表模型時的基礎數據發生變化(對象的代表在表中的行更精確的數量)。這就是爲什麼組合框沒有顯示出來,除了我創建的表模型的第一個實例,因爲我只在這個實例上調用了setCellEditor方法。改變我的程序並不總是創建一個新的表模型,現在一切正常......學到了一些東西。