简体   繁体   English

如何在JTable Swing中增加标题列的Font?

[英]How to increase the Font of the title column in JTable Swing?

I would like to know how to increase the Font size of the title column in JTable Swing? 我想知道如何增加JTable Swing中标题列的字体大小?

I'm usning Netbeans. 我正在使用Netbeans。

Best regards. 最好的祝福。

Daniel 丹尼尔

You just need to call the getTableHeader() method. 您只需要调用getTableHeader()方法。 Then on the object of class JTableHeader use the setFont(/*font*/) method to set new font. 然后在类JTableHeader的对象上使用setFont(/*font*/)方法设置新字体。

table.getTableHeader().setFont( new Font( "Arial" , Font.BOLD, 15 ));

To keep the same Font family and just change the size you can use: 要保持相同的Font系列,只需更改可以使用的大小:

JTableHeader header = table.getTableHeader();
header.setFont( header.getFont().deriveFont(16) );

not sure from your question, then I post both options 不确定你的问题,然后我发布两个选项

1) set Font for JTable myTable.setFont(new Font("Arial", Font.PLAIN, 10)) 1)为JTable设置字体myTable.setFont(new Font("Arial", Font.PLAIN, 10))

2) set Font for TableHeader 2)为TableHeader设置Font

    final TableCellRenderer tcrOs = table.getTableHeader().getDefaultRenderer();
    table.getTableHeader().setDefaultRenderer(new TableCellRenderer() {

        @Override
        public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
            JLabel lbl = (JLabel) tcrOs.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
            lbl.setBorder(BorderFactory.createCompoundBorder(lbl.getBorder(), BorderFactory.createEmptyBorder(0, 5, 0, 0)));
            lbl.setHorizontalAlignment(SwingConstants.LEFT);
            if (isSelected) {
                lbl.setForeground(Color.red);
                lbl.setFont(new Font("Arial", Font.BOLD, 12));
            } else {
                lbl.setForeground(Color.darkGray);
                lbl.setFont(new Font("Arial", Font.PLAIN, 10));
            }
            return lbl;
        }
    });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM