我是白天的Web开发人员,正在考虑构建我的第一个真正的桌面应用程序.我们的想法是构建一个工具,在没有API可用的Web应用程序中自动执行非常重复的任务.
我知道我想使用Java.我之前使用它来获取Web内容,非常了解语法并希望应用程序尽可能简单地交叉平台.
我不太确定我应该使用SWT还是Swing.由于我的主要受众使用Windows,我希望尽可能将其视为本机.Linux和Mac应该可以工作,但外观在这里并不那么重要.
那么支持和反对每个UI框架,Swing或SWT的论据是什么?
谢谢.
PS:我使用Eclipse在Windows上开发.但是考虑和Netbeans一起玩.
jos*_*efx 151
职业摇摆:
Cons Swing:
优点SWT:
Cons SWT:
Kar*_*ell 23
职业摇摆:
但在底线我不建议使用'纯'摇摆或swt ;-)有几个应用程序框架用于摆动/ swt out.看这里.最大的玩家是netbeans(swing)和eclipse(swt).另一个不错的框架可能是griffon,一个很好的'组件'是pivot(swing).格里芬非常有趣,因为它集成了很多图书馆而不仅仅是摇摆 ; 还有枢轴,swt等
cla*_*taq 13
我会使用Swing有几个原因.
它已经存在了很长时间,并且已经应用了更多的开发工作.因此,它可能更完整,并且(可能)具有更少的错误.
有关生产高性能应用程序的大量文档和其他指导.
如果要构建功能丰富的应用程序,可能需要查看NetBeans RCP(富客户端平台).有一个学习曲线,但你可以通过一些练习快速组合好的应用程序.我没有足够的Eclipse平台经验来做出有效判断.
如果您不想使用整个RCP,NetBeans还有许多有用的组件,可以单独提取和使用.
另一个建议是,查看不同的布局管理器.在我学习的时候,他们绊了我很长时间.一些最好的甚至不在标准库中.在我看来,MigLayout(适用于Swing和SWT)和JGoodies Forms工具是两个最好的工具.
有趣的问题.我不太了解SWT(不像Swing和AWT),但这里是SWT/Swing/AWT的比较.
这里是您可以获得有关SWT的基本知识的网站(http://www.java2s.com/Tutorial/Java/0280__SWT/Catalog0280__SWT.htm)
希望你做出正确的决定(如果在编码中有正确的决定)... :-)
小智 5
需要考虑的一件事:屏幕阅读器
由于某些原因,某些 Swing 组件在使用屏幕阅读器(以及适用于 Windows 的 Java AccessBridge)时无法正常工作。知道不同的屏幕阅读器会导致不同的行为。根据我的经验,SWT-Tree 与结合屏幕阅读器的 Swing-Tree 相比,性能要好得多。因此,我们的应用程序最终同时使用了 SWT 和 Swing 组件。
为了分发和加载正确的 SWT 库,您可能会发现此链接很有用:http : //www.chrisnewland.com/select-correct-swt-jar-for-your-os-and-jvm-at-runtime-191