我正在使用Vista,我在Win XP上运行的旧Java应用程序有薄边框,大约2个像素厚,但现在在Vista上,边界变得粗糙,可能是6,7像素厚,我可以在Java中指定我的JFrame边框应该有多厚?
答案 0 :(得分:1)
默认情况下,边框由本机窗口系统处理。但是在JFrame API中有一个方法setDefaultLookAndFeelDecorated(boolean)
。它说如果设置为true 和,如果当前外观支持它,它将使用外观来绘制边框,标题和按钮。我没有尝试过这个,因为我不知道哪种外观和感觉支持装饰。第一件事就是找到一个,然后通过UIManager
或命令行-Ddefault.laf
参数设置它,然后通过JFrame方法打开外观装饰。
如果您使用此选项,您可能会看到非标准的窗口装饰。鉴于Vista眼睛的一点点(悬停在按钮和半透明标题栏上的光芒),你确定要这样做吗?
另一个选择是使用JFrame.setUndecorated(boolean)
方法并自己处理边框,标题栏等的渲染,但这可能更难。