⽤Eclipse开发GUI程序的⼏种⽅法
⼀ 3⼤ GUI 开发插件的特⾊
Eclipse并不⾃带GUI的可视化开发⼯具,那么如果要在Eclipse进⾏可视化的GUI开发,就需要依靠第三⽅的插件。
1. Visual Editor
Eclipse官⽅提供了⼀个叫做Visual Editor(VE)的开源GUI插件, 功能还是⽐较强。可以根据⽤户的界⾯GUI设计,⾃动⽣成相应的JAVA 代码。同样也可以通过相应的JAVA代码,⽣成其匹配的可视化GUI编辑界⾯。不过VE缺点⽐较⼤,我从3.1到3.2之前⼀直在⽤VE,没有多少改观。VE是通过另外启动⼀个 JVM来模拟执⾏GUI的class,然后在Eclipse的界⾯内⽣成⼀个可视化 效果。
回顾⼀下Visual C++,NetBeans等其它IDE进⾏GUI可视化的⽅法,都是基于另外⼀个界⾯管理资源⽂件,⾮⽤户可以直接修改的。⽽直接通过程序代码来管理可视化的GUI编辑器,就需要极强的代码parse能⼒。很可惜,VE想这样做,确没有能够做到。
VE使⽤起来问题很多,⽹上有⽹友直接评价说VE是“可⽤性不强”。我⾃⼰⽤起来的感觉,问题就出在⼀下⼏个⽅⾯:
1). 另外启动JVM速度很慢,⽽且如果要同时打开⼏个Visual Class,那么就要启动⼏个JVM,内存消耗也⼤。⽽且,有些时候,反复打开关闭⼀个Visual Class,JVM还启动不起来。
2). 对于⽤户⾃⼰编辑的可视化 Java代码的parse能⼒很弱。常见的错误就是,明明是正确的可视化GUI代码,但是VE⾥⾯窗⼝打开半天,结果只能显⽰⼀把叉。很多时候,就根本不能显⽰出⼀个完整的可视化窗⼝。⽽对于窗⼝上某个控件的定位能⼒不强,⽤户⾃⼰的代码稍微转⼏道弯⼉,VE就不知道这个控件是在哪⾥产⽣的了,顶多只能显⽰出来,但是⽆法可视化编辑。
4). 3.1的VE编辑的代码到了3.2的VE⾥⾯,显⽰出来完全不⼀样了。
5). 安装⽐较⿇烦,还需要⽤户⾃⾏去安装不只⼀个的辅助插件。
综上所述,VE真的“可⽤性不强”
2. SWT-Designer
SWT-Designer是⼤家公认的,最强的Eclipse下开发GUI的插件 。很多Eclipse书籍上都是直接拿SWT-Designer来讲解如何在Eclipse开发GUI界⾯程序。不过SWT-Designer是⼀个收费的插件。不收费的是基础版本,功能受到很⼤的限制。当然,⽹上也有完整版的破解版。SWT-Designer做得⽐较⼤,6.0最新的安装⽂件有⼏⼗M,可想其功能之强⼤。
3. jigloo
jigloo严格意义上来说也是收费的,不过他提供了non_commercial的版本,⽽这个版本的功能和commercial是完全⼀样的 。作为个⼈开发来说,是不受限制的。jigloo很⼩,最新的版本才3MB多,安装也⽐较简单。
jigloo同时⽀持SWT和Swing。
jigloo也是完全基于Java代码的,不过它的code parse的能⼒远⽐VE要强,也要快。⾄少我很多在VE下出现问题,不能显⽰的Visual Class可以很好地在jigloo下编辑,⾄今还没有遇到jigloo不能编辑,parse出错的时候。⽽jigloo还可以集成了⼀写⽐较好的 Java GUI风格代码的⽀持,功能上⽐VE要强⼤⼀些。
当然,3MB多的插件,再强也强不过SWT-Designer完整版的,但是⽐其基础版的要好很多。⽽SWT-Designer也并不是完全基于JAVA 开发的,⽐如Windows版本的,还携带了dll⽂件。⽽jigloo是完全基于JAVA开发的,下载下来只有⼀个class的zip⽂件,也⽀持Eclipse的在线安装。
⼆ jigloo的安装和使⽤
jigloo的安装很简单,和其它Eclipse插件⼀样,不需要任何安装程序,直接解压出来就⾏了。
厉害的编程代码 创建新的窗⼝,直接输⼊File->New->Others->GUI Forms就可以了。
⽽如果要打开⼀个已经存在的Visual Class,可以直接右键点击,选择Open With->Form Editor打开就可以了。打开后,⾸先要进⾏code parse,不过这个速度很快,也不需要像VE那样还启动⼀个JVM。
三. 总结
根据3⼤Eclipse的GUI开发插件可以看出,基本都是基于Java code的GUI编辑管理。这种编辑器管理,当然就⽐以前Visual C++那样管理Windows界⾯程序要困难很多。但是,现⾏的很多IDE,⽐如Visual Studio .NET,2005都还是能够做得⽐较快。主要的就是要看起code parsing的能⼒。
VE前⾯的缺点已经总结得⽐较多,不知道这个官⽅的插件什么时候才能让⼈真正放⼼。作为开发者来说,⼼⾥还是最想给VE加把劲的,毕竟VE是开源的,随便⽤的。
SWT-Designer功能最强⼤,可惜价格不低。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论