“专业人士”如何在java中创建GUI?

时间:2010-04-11 14:09:40

标签: java user-interface

感谢您对my previous question about GUI in java的回答。我现在想知道专业人士选择什么解决方案来获得一个很好的GUI,用于“真正的”应用程序。你是否使用swing和JComponents并改变“外观和感觉”?你更喜欢awt还是其他图书馆?

很抱歉,如果这个问题听起来很奇怪,我是学生,我真的不知道java在现实世界中是如何使用的......

7 个答案:

答案 0 :(得分:9)

在我们公司,我们使用Swing,因为JVM支持开箱即用,但我们确实为某些面板和按钮使用了颜色编码的背景颜色。

如果我们使用不同的东西,比如SWT或Jambi,我们还必须为所有平台推出这些框架,并测试所有OS和(支持)java版本的框架。一点也不好。

使用Swing创建一个很好的响应式应用程序是相当棘手的;所以你真的需要使用SwingWorker等。有了一点经验,你可以用这种方式创建一个不错的应用程序。

即使它不是最快的开发框架,与定义用户界面的功能要求以及版本发布时的测试和支持相比,开发时间确实很小。

那就是说,我们的目标是台式机。如果您定位移动设备或需要网络前端,您的选择可能会有所不同。

答案 1 :(得分:4)

我不相信任何人更喜欢AWT。 Swing在十一年前完全取代了它,在它的基础上构建了AWT 1.0设计中的缺陷。

Swing不是专业人员制作Java UI的唯一方式。这适用于台式机,但现在也有JavaFX。对于Web,UI是使用HTML,CSS,JavaScript和JSP构建的。

答案 2 :(得分:1)

我的经验是,大多数想要创建丰富GUI的组织仍然使用Swing,并手动完成布局管理器的所有烦恼等。

SWT的使用仅限于使用Eclipse RCP作为其平台的组织。我不确定为什么它没有在这个平台之外流行。

这是可悲的承认,但Java的Swing GUI,将一般不看好,除非你花了很多时间为他们创造一个更加原始的感觉。即使在那时,他们也经常会失去美学等同于专门为Windows编写并使用WinForms等Window API的程序。

答案 3 :(得分:1)

我在过去几年看到的最体面的应用程序是使用Eclipse Rich Client Platform

构建的

Eclipse使用Standard Widget Toolkit

并提供Graphical Editing Framework (GEF)

答案 4 :(得分:1)

我们通常使用Swing,因为开箱即用的标准JRE支持它。通常我们在Netbeans中进行初始表单设计和事件连接,然后将它导出到我们想要的任何东西,例如Eclipse。

Netbeans使用标准库(以及你必须要包含的一两个罐子)吐出纯Java,所以在Netbeans中设计表单并随后转向别的东西并不是什么大不了的事。

有些人建议使用布局管理器手动进行表单布局。我认为这只是一个选项,只有当你做一些大而且预算很好的事情时,必须无限维持。否则,值得花时间太费时间。

答案 5 :(得分:1)

我们依赖SWT来获取Java GUI。是的,您必须包含一个外部本机库,但外观本机,响应更快(尽管Swing在过去几年中变得更快)并且与目标平台上的其他应用程序无缝连接。

答案 6 :(得分:0)

Macintosh OS X创建自己的Java运行时。它们为Swing组件提供与本机应用程序相同的外观和感觉。

我严格使用Swing。我通过Web Start为与用户的智能卡读卡器连接的Mac和Windows分发“真正的”桌面应用程序。

NetBeans IDE为您提供了一种创建表单的WYSIWYG方式。我已经尝试过了,它非常整洁,但我们仍然使用Eclipse作为我们的IDE并在代码中设计表单。