是否有一种特定的方法可以更改摇摆应用程序的外观,而无需在每次用户更改 LAF 时都重新启动应用程序?
我正在寻找一种解决方案,可以从配置对话框中选择 LAF,它会在应用时直接更改,而不必回退到告诉用户重新启动应用程序。
目前我记得在属性文件中选择的 LAF,并在打开任何窗口之前将其设置为启动。
是否有一种特定的方法可以更改摇摆应用程序的外观,而无需在每次用户更改 LAF 时都重新启动应用程序?
我正在寻找一种解决方案,可以从配置对话框中选择 LAF,它会在应用时直接更改,而不必回退到告诉用户重新启动应用程序。
目前我记得在属性文件中选择的 LAF,并在打开任何窗口之前将其设置为启动。
来自Java 教程:
您首先需要通过调用设置新的外观和感觉UIManager.setLookAndFeel
:
UIManager.setLookAndFeel(lnfName);
然后,为了使现有组件反映新的外观和感觉,调用SwingUtilities.updateComponentTreeUI
每个顶级容器(对话框、框架……)上的方法。您可能还希望调整每个顶级容器的大小以适应其包含的组件大小的变化:
SwingUtilities.updateComponentTreeUI(frame); // update components
frame.pack(); // adapt container size if required