我的环境是JDK6。我在 Win7 和 Win2003 中测试我的代码都使用相同的 JRE。
我使用代码“UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");”安装了 JAVA WindowsLookAndFeel。
我认为安装 WindowsLookAndFeel 后 UI 在 Win7 和 Win2003 中的行为应该一致。我认为它应该不同于使用与操作系统相关的代码“UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());”。但事实是,UI在Win7中看起来像Win7,在Win2003中看起来像Win2003。我阅读了 WindowsLookAndFeel 的源代码,发现如果 Windows NT 版本低于 4.0,WindowsLookAndFeel 将使用 WindowsClassicLookAndFeel 代替。但是Win2003的windows NT版本是5.2。
甚至 CrossPlatformLookAndFeelClassName 在 Win7 和 Win2003 中也有不同的 java 外观。
你能解释一下吗?我真的很困惑。
通过安装 WindowsLookAndFeel,我可以在不同的 Windows 操作系统上拥有相同的用户界面吗?谢谢你。