论坛首页 Java企业应用论坛

开源项目Visual Swing for Eclipse

浏览 124994 次
该帖已经被评为良好帖
作者 正文
   发表时间:2008-06-27   最后修改:2009-03-19
一直以来非常喜欢Swing,对Swing的研究也有很长一段时间了,一直希望Swing在Java桌面开发中扮演重要的角色。但是很久以来Java桌面开发始终是个弱项,其中很大一部分原因是缺乏比较好用的界面设计工具。

NetBeans的界面设计工具(以前叫Matisse Project)的出现给Java的Gui开发尤其是Swing开发带来了希望,但遗憾的是当前Java集成开发环境仍然是Eclipse的天下,据统计,目前市场上至少2/3的份额是被eclipse占有。虽然netbeans已经获得长足的进步,并进一步吸引了更多的developer,但是由于历史习惯和遗留系统等等问题,这个市场份额在最近几年肯定还是eclipse的天下。

当然eclipse也有很多很优秀的界面工具插件,可惜的是免费的插件其质量难以与netbeans的匹敌,好用的插件又都是收费的。因此一直想为eclipse开发一款免费的、开源的、功能上与Mattise Project相近的界面设计工具,算是为Swing的发展做一点贡献。

以前曾经使用swing做过一个swing的界面设计工具,但由于是一款独立的工具,没有集成到任何IDE中,因此几乎没有实用价值。因此决定在闲暇时间将这个工具重新用eclipse插件技术进行开发。

经过了一年左右周末的努力,这款界面设计工具终于快要完成了,目前的版本是0.9.8。开发这款工具的目标是希望达到以下特点:

1. 界面布局模仿Netbeans界面设计工具,操作和netbeans设计工具基本一模一样,容易直观的实现布局。这是第一目标。目前已经实现。

2. 代码的生成和解析不需要辅助form文件,直接从源代码文件进行解析生成。生成代码可读性要强,要可以编辑并且同步。目前已经基本实现,有些折中处理,采用约定代替配置的办法提高代码解析速度。

3. 直接支持树和表的界面设计,不需要写代码,直观的采用界面操作,便可以直接生成表和树的数据模型代码。此功能已经实现。而且目前的框架可以很容易扩展,实现类似其他复杂组件的界面设计。

4. 工具的性能良好,界面设计功能流畅,代码解析/生成速度快。目前来看,速度和性能还不错,初步的打算是将速度放在最后处理优化。

5.支持在设计时切换LookAndFeel,并能生成所设定LookAndFeel的代码。这样就能做到设计时和运行时完全一致。而NetBeans的设计工具只能以NetBeans自身相同的LookAndFeel设计,然后使用另外的LookAndFeel预览。

6.支持菜单的可视化设计。

代码位置:
http://code.google.com/p/visualswing4eclipse/
使用的是EPL v1.0授权方式。照顾商业利用和开源改进而采用此授权。目前支持的Eclipse平台是3.4,JDK请使用1.6

(由于Swing Designer是Instantiations, Inc.的注册产品名称,该项目已经更名为Visual Swing for Eclipse)
   发表时间:2008-06-27  
上传几张抓图说明:
安装插件以后,在New Class Wizard中可以发现一个Visual Swing Class,选择该项以生成可视化JPanel,目前只支持JPanel,以后可以很容易扩展。
0 请登录后投票
   发表时间:2008-06-27  
下面是一个典型的设计界面的场景,红框标出的是该插件提供的视图和按钮,支持LookAndFeel切换:
0 请登录后投票
   发表时间:2008-06-27  
这儿是拖拽组件时显示布局提示,和netbeans的界面布局设计类似,点击看大图:
0 请登录后投票
   发表时间:2008-06-27  
这是生成的源代码,可以直接修改源代码,保存后,会自动同步的到设计界面上去:
0 请登录后投票
   发表时间:2008-06-27  
这是一个表格的设计器,你可以直接在界面上拖拽,添加删除编辑表格:
0 请登录后投票
   发表时间:2008-06-27  
这是一个树的设计器,你可以直观的添加删除编辑树的节点:
0 请登录后投票
   发表时间:2008-06-27  
不错,做这种工具是件很麻烦的事。
0 请登录后投票
   发表时间:2008-06-27  
看起来不错,
0 请登录后投票
   发表时间:2008-06-28  
不错,马上用一下试试。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics