2011-03-09 92 views
0

如何改变JFrame的形状不同的形状,而且也使界面看起来很像苹果的Windows框架如何更改JFrame的形状?

谢谢...

+2

尝试使用[Quaqua](http://www.randelshofer.ch/quaqua/)外观使您的框架看起来像OS X一样。 – justkt 2011-03-09 13:22:04

回答

3

你可以做一个Java Swing应用程序的外观界面中的“原生”到操作系统它用增补以下行要么你的主要方法,init方法(如果它是一个小程序)或顶层JFrame的构造上运行:

try { 
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
} catch(Exception e) {} 

编辑

UIManager.setLookAndFeel()可以抛出五种不同类型的异常,记录here(假设您正在使用Java 6)。如何处理这些异常完全取决于您 - 如果您忽略它们(如在我的示例中,捕获所有异常然后什么都不做),那么您的应用程序将使用默认的Java外观。也许这不是一件坏事?只有你可以决定。

+1

我给了这个投票,但请不要在未来发布例子,忽略例外。 – 2011-03-09 14:08:13

+0

我已经编辑了我的答案以回应您的评论。我遗留了捕获的异常,但没有处理,只是为了标明这种方法抛出异常的事实,而不是意味着可以忽略异常。我希望现在更清楚。 – 2011-03-09 16:43:55

0

要制作一个成形的窗口,您可以使用com.sun.awt.AWTUtilities类。它有一个名为`setWindowShape的方法,它需要两个参数,一个形状和一个JFrame。但是这个班级通常受到限制,所以使用它并不是一个很好的解决方案。我认为在下一个Java版本中,它将被添加为默认类。