java - 为所有组件Java设置相同的字体

标签 java swing fonts jframe jpanel

我想为 JPanel 中的所有组件设置特定字体,但我希望这个问题更笼统,不限于 JPanel。如何将字体设置为容器(JFrame 或 JPanel)中的组件列表?

最佳答案

这里有一个简单的方法,可以让你为任何Container下的整个组件树指定Font(或者只是一个简单的Component,无所谓):

public static void changeFont ( Component component, Font font )
{
    component.setFont ( font );
    if ( component instanceof Container )
    {
        for ( Component child : ( ( Container ) component ).getComponents () )
        {
            changeFont ( child, font );
        }
    }
}

只需将您的面板和特定字体传递给此方法,您也会重构所有子项。

关于java - 为所有组件Java设置相同的字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12730230/

相关文章:

java - 禁用单个 JComboBox 项

java - 无法在 JTable 中返回 Double 值

java - 如何向每个 JTree 节点添加不同的 JComboBox?

ios - Roboto 字体在 iOS 13 中的 iPhone XR 上无法使用

css - 将自定义字体与 CSS 结合使用时布局更改直到文件加载

java - 使用 Gson 在 Java 中反序列化 RouteXL 响应很困难,因为 RouteXL 返回多个对象而不是数组

java - gwt setEnabled 未在 GoogleChrome 上执行

java - 防止 jfx packager 的辅助启动器在 Windows 中触发 UAC/提升权限

java - 如何在 Java Swing 的 JLabel 中设置行间距/高度?

java - 给定迷宫中从头到尾的路径数