JTable Cell字体?(JAVA)

1 java fonts swing jtable

我创建的程序应该工作一样Microsoft Excel,除了在JAVA.它还应该支持单元格格式化(这是我的问题).我有用于检测单击哪个单元格以及使用哪种字体正常工作的代码 - 我无法弄清楚如何应用Font到单元格!Google给了我CellRenderers,但似乎细胞渲染器只在条件出现时格式化细胞true.我希望它在Font调用时用指定的格式进行格式化!

有人可以帮助我,我真的很困惑!

我已经看过Java教程了.

如果以前问过这个问题我很抱歉!

Ana*_*rma 5

这就是你要找的东西,这个代码片段改变了jTable中所有列的字体.我确定稍作修改就可以覆盖你的场景.

for (int i = 0; i < jTable1.getColumnCount(); i ++) {
    TableColumn col = jTable1.getColumnModel().getColumn(i);
    col.setCellEditor(new 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 java.awt.Font("Arial Unicode MS", 0, 12));
        return component;
    }
}
Run Code Online (Sandbox Code Playgroud)