我需要能够以编程方式更改我的Swing应用程序中所有组件的字体大小。由于我正在使用Nimbus外观,因此无法使用通常的方式(使用UIManager或putClientProperty)。因此,我正在使用以下方法逐个增加应用程序中每个组件的字体大小...
private void enlargeFont(java.awt.Component c, float factor) {
c.setFont(c.getFont().deriveFont(c.getFont().getSize() * factor));
}
我遇到的问题是,在我的JPanel上使用了一个TitledBorder,(预料之中)将JPanel传递给上述方法并不会调整JPanel的边框标题大小。
那么有没有办法改变边框的字体大小?(如果我能获取边框的文本,我可以创建一个新的TitledBorder(使用更大的字体),然后用JPanel的setBorder()方法应用它...但似乎无法获取边框文本?)
有人有解决方法吗?