我有一个基本的 GUI(带按钮的普通 Jframe),我已经使用 Nimrod 改变了外观。新的 l&f 是我在运行时更改的深色主题。
但是,当 GUI 运行时,有很短的时间,GUI 具有明亮的背景,然后应用新的深色 l&f。
我假设导致这种短暂的亮度闪烁的原因是在运行时,默认的 l&f 会短暂显示,就在应用新的 l&f 之前。
这只是几分之一秒,但它看起来很不整洁,因此很明显且很烦人。
如果我在运行后使用按钮更改 l&f,似乎不会发生。
那么,还有其他人有这方面的经验吗?有没有可能的解决方法?在应用新的 l&f 之前隐藏 JFrame?
如果有帮助,这是我的代码:
public static void main(String[] args)
{
setTheme();
NewJFrame njf = new NewJFrame();
njf.setLocationRelativeTo(null);
njf.setTitle("My First Swing Application");
njf.pack();
njf.setVisible(true);
}
static void setTheme()
{
NimRODTheme nt = new NimRODTheme();
nt.setPrimary1( new Color(0,51,153));
nt.setPrimary2( new Color(0,92,143));
nt.setPrimary3( new Color(0,102,153));
nt.setSecondary1( new Color(31,31,31));
nt.setSecondary2( new Color(41,41,41));
nt.setSecondary3( new Color(51,51,51));
nt.setWhite( new Color(0,0,0));
nt.setBlack( new Color(255,255,255));
nt.setMenuOpacity(195);
nt.setFrameOpacity(180);
NimRODLookAndFeel NimRODLF = new NimRODLookAndFeel();
NimRODLF.setCurrentTheme (nt);
try
{
UIManager.setLookAndFeel(NimRODLF);
}
catch(Exception e)
{
}
}
此外,如果需要 nimrod,您可以在这里获取:http://www.mediafire.com/?l9pytbooenmemgc
非常感谢任何帮助。
最佳答案
关于运行时的 Java 观感,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8953935/