在我目前的项目中,我们必须在java中开发一个外观漂亮的基于桌面的应用程序。
目前,我们有一个非常基本的桌面应用程序,用swing编写并且团队没有很好的知识。我们可以在摇摆中创建一个非常好看的UI吗?
我们应该使用JavaFX来创建桌面应用程序吗?
有什么其他选择呢?
答案 0 :(得分:25)
Swing在外观方面非常灵活,你可以使用Swing制作非常好看的应用程序。
如果你想学习如何制作漂亮的Swing GUI应用程序,我推荐Chet Haase和Romain Guy的书Filthy Rich Clients。
答案 1 :(得分:9)
结帐http://www.pushing-pixels.org/。 Kirill是Substance的作者,为Swing提供了大量新的外观和感觉选项。 Here是一篇博客文章,展示了Swing的一些可能性。曾经有一个链接到他在2007年Java One的演示文稿,但遗憾的是该链接不再有效。
答案 2 :(得分:8)
你可以随心所欲地看待它。特别是如果你写出自己的外观和感觉。我自己用半透明面板和简单的按钮完成了它。
在以下位置查看屏幕截图:
http://www.taranfx.com/best-java-swing-look-and-feel-themes-professional-casual-top-10
Nimbus是一种新的外观和感觉越来越受欢迎,它看起来非常专业imo:
答案 3 :(得分:5)
你当然可以在Swing中创建漂亮的用户界面 - NetBeans和IntelliJ IDEA之类的应用已经证明了这一点。
Swing唯一的选择是SWT(Eclipses工具包),但它不像Swing那样可移植,也不灵活。但是,它提供了更快的性能和本机组件的使用,这可能是某些人实际想要的。
大多数现有的GUI工具包都有Java绑定 - 例如Java for Gnome,有人可能会发现它们很有趣。
但我赞成Swing的极端可移植性,MVC采用,可插拔的外观和感觉,许多第三方库的可用性以及其他组件(SwingX,JIDE,...)和易用性。
为了在Swing中获得最佳效果,选择一个好的布局管理器是必不可少的 - 我建议你看看全能的MiG layout。
答案 4 :(得分:2)
请勿使用bargepole触碰JavaFX 1。
然而,JavaFX 2看起来非常有前景,甲骨文表示他们将把它紧密地集成到Java 8.它背后有一个非常好的API,它以图形方式加速,你可以使用CSS3和它来取悦它。默认情况下,它看起来也很不错。唯一需要注意的是,它根本不适用于Linux - 但是如果你想开发一个将在未来几年左右发布的应用程序,或者你对等待它不太感兴趣跨平台支持,这是一个很好的选择。
答案 5 :(得分:1)
你回答不清楚你的问题是什么。一个简单但通常足够的解决方案是将应用程序的外观更改为系统默认外观(因此Swing看起来就像本机应用程序一样)。您需要做的就是在创建/显示任何UI之前在某处插入以下代码(如果您不知道在哪里,将其作为main方法中的第一个):
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
// exit application, log or ignore exception
}