我正在尝试以这种方式更改程序的LAF:
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel");
} catch (Exception ex) {
Logger.getLogger(MainWin.class.getName()).log(Level.SEVERE, null, ex);
}
但这并没有影响,并且在报告“ com.sun.java.swing.plaf.gtk.GTKLookAndFeel”时,程序仍然看起来像METAL,这意味着必须对其进行更改:
UIManager.getLookAndFeel().getClass().getName();
换成其他LAF也有同样的问题!
有什么问题?
谢谢
最佳答案
在创建GUI之前,您是否设置了外观?因为如果您的GUI已经创建(即使未显示),则必须告诉Swing LAF已更新:
SwingUtilities.updateComponentTreeUI(frame);