我已經設置了默認的字體在我的JTable作爲展示如下更改JTable中單元格的字體,而編輯它
myTable.setFont(new java.awt.Font("Verdana", 1, 10));
我想表明我的JTable中一個更大的字體,而有些數據被輸入到細胞內。所以我用MyTableCellEditor自定義類。
public class MyTableCellEditor extends AbstractCellEditor implements TableCellEditor {
JComponent component = new JTextField();
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected,
int rowIndex, int vColIndex) {
((JTextField) component).setText((String) value);
((JTextField) component).setFont(new Font("Verdana", 1, 12));
return component;
}
public Object getCellEditorValue() {
return ((JTextField) component).getText();
}
}
下面是我將CustomCellEditor附加到我的表的代碼。
myTable.getColumnModel().getColumn(1).setCellEditor(new MyTableCellEditor());
但這個代碼似乎並不work.The細胞字體變小,而編輯的,一旦我完成編輯並回車,將默認的JTable字體,我設定(宋體10)呈effect.Why出現這樣的情況?我已經將CustomCellEditor字體設置爲(Verdana 12)給我的單元格。
對我來說就像一個魅力。當我編輯單元格時,字體變得更粗大。考慮發佈[SSCCE](http://sscce.org)以瞭解您的問題的底部。 – 2013-04-11 16:04:45
要小心:cellEditor的實現是**無效**(因爲它不通知它的聽衆) – kleopatra 2013-04-19 13:16:02