当前位置: 首页 > 面试题库 >

Java桌面应用程序:SWT与Swing的比较

章安宜
2023-03-14
问题内容

我现在是一名Web开发人员,正在考虑构建我的第一个真正的桌面应用程序。这个想法是要构建一个工具,该工具可以在没有API的Web应用程序中自动执行非常重复的任务。

我知道我想使用Java。我以前在网络上使用过它,非常了解语法,并希望应用程序尽可能地跨平台。

我不确定的地方是应该使用SWT还是Swing。当我的主要受众使用Windows时,我希望在那里尽可能使用本机。Linux和Mac应该可以工作,但是外观在这里并不那么重要。

那么支持和反对每个UI框架(Swing或SWT)的参数是什么?

谢谢。

PS:我使用Eclipse在Windows上进行开发。但是正在考虑与Netbeans一起玩。


问题答案:

优点摇摆:

  • Java库的一部分,无需其他本机库
  • 在所有平台上的工作方式相同
  • Netbeans和Eclipse中的集成GUI编辑器
  • Sun / Oracle的优秀在线教程
  • 受官方Java扩展支持(例如Java OpenGL)

缺点摇摆:

  • 本机外观可能与实际本机系统有所不同。
  • 重型部件(本机/毛坯)隐藏秋千部件,在大多数情况下都不是问题,因为使用重型部件很少

优点SWT:

  • 尽可能使用本机元素,因此始终使用本机行为
  • eclipse,gui编辑器VEP支持(VEP还支持Swing和AWT)
  • 在线大量示例
  • 具有集成的awt / swt桥以允许使用awt和swing组件

缺点SWT:

  • 需要每个受支持系统的本机库
  • 由于使用了本机资源,可能无法支持所有系统上的所有行为(提示选项)
  • 管理本机资源,而本机组件通常将与它们的父级一起处置,其他资源(如字体)则必须手动释放或注册为组件的侦听器以自动释放。


 类似资料:
  • 问题内容: 我有一个非常大的程序,当前正在使用SWT。该程序可以在Windows,Mac和Linux上运行,它是一个包含许多元素的大型桌面应用程序。现在SWT有点老了,我想切换到Swing或JavaFX。我想听听您对三件事的想法。 我主要关心的是桌面GUI应用程序会更好吗?(我在网上看过,很多人认为JavaFX与Swing一样好,但是除了简单的见解大战之外,我没有看到很多有效的论点)。它必须在Wi

  • 问题内容: 我正在使用SWING开发一个单用户桌面应用程序。我对使用java.sql api的这种应用程序有一点经验,发现它一点都不舒服… 在我的新应用程序中,我第一次尝试使用JPA,我读了很多教程,这些教程使我几乎了解了我所需要的所有内容,但是找不到真正的Java Desktop应用程序的好例子。 我正在考虑使用以下架构,但不知道我是否正确… 我想创建一个MyPersistenceUnit类:

  • 本文向大家介绍Java运用SWT插件编写桌面记事本应用程序,包括了Java运用SWT插件编写桌面记事本应用程序的使用技巧和注意事项,需要的朋友参考一下 本文实例介绍了Java基于SWT编写记事本的详细过程,分享给大家供大家参考,具体内容如下 可实现windows系统桌面记事本基本功能,傻瓜式教学,一步一步手把手操作。小白也可自己编写出完整的应用程序。 需要工具:Eclipse(带SWT插件) 成品

  • 问题内容: 我已经开发了一个桌面Swing应用程序,并且正在考虑提供自动更新功能的最佳方法。我知道JavaWebStart提供了此功能,但我认为它不适合我的需求,因为我需要读取本地文件,因此需要对jar进行签名。此外,JWS需要额外的工作才能在服务器中部署,而现在我只需要上传.jar。 我一直在考虑这种方法: 第一个JAR(不需要更新)将加载初始屏幕,在config.xml中检查当前版本,并将其与

  • 在学习这本书的过程中,你已经掌握了很多关于 Git 的命令。虽然这些是在学习过程中不可缺少的,但是版本控制的核心并不是让你学习所有的命令和参数。 当你掌握一些基本的概念,再加上一个带有用户图形界面的应用程序的帮助,就可以让你的日常工作变得更加简单。一个最大的好处就是它会为你提供了一个可视化的用户操作界面。 在桌面应用程序中,很多任务使用起来会更加容易和更方便。并且你也不需要记住那几十个繁琐的 Gi

  • 从零开始建造什么会更快? 我在我的应用程序中使用MVC方法,如果这对我有任何帮助的话。