我有一个4年前的项目,是用Swing + SwingX编写的。目前,它还活着,还在踢。
但是,随着更多与GUI相关的特性请求(例如,一个可排序树表)的出现,我开始感到满足请求的困难。这是真的,特别是因为SwingX项目没有任何积极的开发。
此外,我几乎找不到任何好的,但积极维护/开发/发展的GUI Java框架。
我想知道,有哪个Swing开发人员也有同样的感受吗?您是否开始将Swing项目迁移到一个更加活跃的开发GUI框架,如JavaFX?
发布于 2012-05-11 21:02:21
我个人将转向JavaFX (2.1+,而不是带有讨厌的脚本语言的旧的奇怪的1.x版本)。新的JavaFX并不是百分之百完美,但它已经是一个更令人愉快的使用比Swing,我看到了一个合理的未来(尤其是考虑到嵌入式Webkit引擎)。
发布于 2012-06-08 01:06:53
我经常问自己同样的问题,但我不认为我会将现有的项目迁移到JavaFX。至少现在不是,中型到大型项目也不是。不过,我会考虑在新项目中使用JavaFX,并考虑将来再进行迁移,并根据JavaFX的进展重新评估问题。
目前,我所关注的问题是:
总的来说,我认为关于优势的硬数据是我所缺少的,我完全相信JavaFX。
另一方面,Swing是经过验证和测试的。是的,这个API很笨重,在你的IDE中调用像JTextPane这样的Swing对象的自动完成功能,会让它为它的妈妈哭泣,但是,如果你有足够的知识,你可以用Swing构建非常棒的UI,它的性能很好(我从来没有买过Swing的性能谬误,请看Romain Guy在Sun博客上的前博客文章),并允许你做一些非常整洁的事情。
因此,在切换任何内容之前,我建议您先尝试一个小型原型,然后尝试移植应用程序的一些对话框并查看其运行情况。
发布于 2012-06-08 21:33:46
我已经做了很多JavaFX,我更喜欢它而不是挥杆。场景图的结构与您习惯的Swing不同,但是它提供了很多改进。这个API使用起来很有趣,感觉很清爽。
你可以用它做更多,多媒体,动画,网页浏览。例如,您可以用几行代码构建一个谷歌应用程序,嵌入html5和javascript。
据说它包含在Java 8运行时中,这意味着将Swing定义为默认的ui框架。
@迁移:您应该从隔离应用程序中可以转换为JavaFX的部分开始。Swing-JavaFX 2互操作性是一件大事,您可以使用javafx.embed.swing.JFXPanel嵌入您的JavaFX元素。见swing-fx-互操作性。(为了完整起见,您也可以嵌入SWT中。)
https://softwareengineering.stackexchange.com/questions/148263
复制相似问题