[英]JTable Cell Font? (Java)
我正在創建的程序應該像Microsoft Excel
一樣工作,除了JAVA
。 它還應該支持單元格格式(這是我的問題)。 我有用於檢測單擊了哪個單元格以及使用什么字體正常工作的代碼 - 我只是不知道如何將Font
應用於單元格! Google
給了我CellRenderers
,但似乎只有當條件為true
時,單元格渲染器才會格式化單元格。 我希望它在調用時使用指定的Font
格式化!
誰能幫幫我,我真的很困惑!
我已經看過Java 教程。
如果以前有人問過這個問題,我深表歉意!
這就是您要查找的內容,此代碼片段會更改 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;
}
}
這將更改表格中所有單元格的字體 - 即使添加了新列或行:
JTable table;
......
Object dce = table.getDefaultEditor(Object.class);
if(dce instanceof DefaultCellEditor) {
((DefaultCellEditor) dce).getComponent().setFont([your font]);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.