Eclipse进行可视化的GUI开发3大GUI插件

转自http://www.cnblogs.com/NationWoo/archive/2011/05/31/2065176.html

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的插件 http://www.swt-designer.com/。很多Eclipse书籍上都是直接拿SWT-Designer来讲解如何在Eclipse开 发GUI界面程序。不过SWT-Designer是一个收费的插件。不收费的是基础版本,功能受到很大的限制。当然,网上也有完整版的破解版。SWT- Designer做得比较大,6.0最新的安装文件有几十M,可想其功能之强大。

3. jigloo

jigloo严格意义上来说也是收费的,不过他提供了non_commercial的版 本,而这个版本的功能和commercial是完全一样的http://www.cloudgarden.com/jigloo/。作为个人开发来说,是 不受限制的。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。

下面是我的Eclipse下使用jigloo的截图:

三. 总结

根据3大Eclipse的GUI开发插件可以看出,基本都是基于Java code的GUI编辑管理。这种编辑器管理,当然就比以前Visual C 那样管理Windows界面程序要困难很多。但是,现行的很多IDE,比如Visual Studio .NET,2005都还是能够做得比较快。主要的就是要看起code parsing的能力。

VE前面的缺点已经总结得比较多,不知道这个官方的插件什么时候才能让人真正放心。作为开发者来说,心里还是最想给VE加把劲的,毕竟VE是开源的,随便用的。

SWT-Designer功能最强大,可惜价格不低。而jigloo可谓介于两者之间,对于个人开发者来说,可以免费使用,而且其功能也足够到开发各种大型的GUI应用程序了,应该是一个合适的选择。

posted on 2012-10-18 10:44 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/archive/2012/10/18/2729070.html

Eclipse进行可视化的GUI开发3大GUI插件相关推荐

  1. 为eclipse安装python、shell开发环境和SVN插件

    2019独角兽企业重金招聘Python工程师标准>>> eclipse是一个非常好用的IDE,通常来说我们都用eclipse来开发JAVA程序,为了让开发python.shell等脚 ...

  2. python gui开发工具_深入解析Python,透析应用开发,涵盖9大应用领域的Python框架...

    前言 当前,Python 已经成为最流行的程序设计语言之一,被越来越多的人作为首选语言来学习和应用.作为一种解释型的语言,Python具有内置的高级数据结构和简单有效的面向对象编程机制.同时,其语法简 ...

  3. 大屏可视化低代码开发平台网址

    大屏可视化低代码开发平台网址:https://www.osrc.com/explore/projects go-view: https://gitee.com/dromara/go-view

  4. 同济大学「智能大数据可视化实验室」开发绘图机器人,相关论文被 AAAI 2019 收录...

    雷锋网 AI 科技评论按:第 33 届人工智能顶级国际会议 AAAI 2018 论文收录结果目前已公布,其中就收录了同济大学「智能大数据可视化实验室」开发的绘图机器人 AI-Sketcher 的相关论 ...

  5. 电子沙盘数字沙盘大数据可视化GIS系统开发教程第16课

    电子沙盘数字沙盘大数据可视化GIS系统开发教程第16课:新增加属性在MTGIS3d控件 public bool ShowFLGrid;//是否显 示方里网格. public bool Atmosphe ...

  6. 关于Eclipse平台的使用和开发第一个SWT程序

    IBM把投入巨资开发的Eclipse作为一个开源项目捐献给了开源组织Eclipse.org Eclipse出色而有独创的平台特性,现在仍由IBM子公司OTI(主要从事Eclipse开发的人)继续领导着 ...

  7. wxpython dataview处理大量数据_38个常用Python库:数值计算、可视化、机器学习等8大领域都有了...

    作者 | 李明江 张良均 周东平 张尚佳 来源 | 大数据DT 原文 | 38个常用Python库:数值计算.可视化.机器学习等8大领域都有了 Python作为一个设计优秀的程序语言,现在已广泛应用于 ...

  8. 问题合集 ------- 用 Eclipse 平台进行 C/C++ 开发

    简介: 我们将概述如何在 C/C++ 开发项目中使用 Eclipse 平台.尽管 Eclipse 主要是一个 Java 开发环境,但其体系结构确保了对其它编程语言的支持.在本文中,您将学习如何使用 C ...

  9. 【Java】浅谈Java的GUI开发

    GUI是什么? 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面. 图形用户界面是一种人与计算机通信的界面显示格 ...

最新文章

  1. python读写json文件
  2. 湖南工程师用中文编写操作系统,还发明了甲、乙、丙语言???
  3. arm的一些概念(ARM7、Cortex-M的区别)
  4. Linux内核对设备树的处理
  5. java 多态向子类,在Java多态中调用子类
  6. mysql windows ad_您可以使用PHP获得Windows(AD)用户名吗?
  7. 七步从AngularJS菜鸟到专家(4和5):指令和表达式
  8. python爬虫程序的流程图_Python即时网络爬虫项目: 内容提取器的定义(Python2.7版本)...
  9. AD6.8_mcu123 分享地址
  10. 解释为什么用梯度下降而不是直接求导数为0的解?
  11. 矩阵连乘备忘录算法java_矩阵连乘(备忘录方法:自顶向下递归)
  12. python logger.debug_python处理logger日志
  13. sqlplus linux 连接数据库,sqlplus连接Oracle
  14. 使用matlab生成正弦波、三角波、方波的COE文件
  15. 蔡军生先生第二人生的源码分析(2)第二人生的基本功能
  16. 解决报错Duplicate keys detected
  17. dedecms友情链接字数修改
  18. Android 快速集成阿里云OSS服务2020
  19. Extending Laravel with First Party Packages 用第一方软件包扩展Laravel Lynda课程中文字幕
  20. 03矩阵的乘法与逆矩阵

热门文章

  1. 区块链中的智能合约是什么?
  2. rxswift中hud_如何在RxSwift中运行测试
  3. 数据通信技术(九:OSPF特殊区域配置(Cisco))
  4. IDEA IntelliJ 如何给web项目配置tomcat
  5. MyBatis框架添加客户有哪些步骤
  6. JAX-RS(基于Jersey) + Spring 4.x + MyBatis构建REST服务架构
  7. 【TeeChart Pro ActiveX教程】(八):ADO数据库访问(上)
  8. SQLSERVER存储过程基本语法使用
  9. Android开发之程序猿必需要懂得Android的重要设计理念2(5.20更新版)
  10. 软件定义网络 对我们有多重要?