[Enlish]         

Agile Grid  介绍


作者:fourbroad (fourbroad@gmail.com)

V1.1

一 简介

Agile Grid是基于Eclipse SWT实现的表格控件,基于该控件可实现各种复杂的电子表格。Agile Grid在实现时充分借鉴了Eclipse JFace中TableViewer的设计模式,同时对表格控件的灵活性和可扩展性做了增强设计,开发者可依据具体应用的需要对Agile Grid的布局、煊染、编辑、键盘导航等进行灵活定制。Agile Grid的主要特性包括:
  1. 针对不同单元格提供不同的煊染方式,Agile Grid提供了一些基本的煊染类如TextCellRenderer,HeaderCellRenderer,ButtonCellRenderer, CheckboxCellRenderer等,通过实现ICellRenderer接口类,开发人员可以提供更加个性化的煊染类;
  2. 针对不同单元格内容的特点,提供相应的编辑方式,如TextCellEditor可对文本内容进行编辑; ComboBoxCellEditor可为用户提供一系列有效的可选值;CheckboxCellEditor提供了二值逻辑选择;通过使用 DialogCellEditor,开发者可为最终用户提供更为复杂和直观的编辑方式。同样开发人员也可根据实际需要扩展CellEditor获得更符合 内容特点的编辑器;
  3. 可针对指定的行、列或单元格提供动态工具条,实现一个单元格支持多个单元格编辑器。
  4. 可将多个单元格合并成一个单元格;
  5. 在Agile Grid的左侧有一个行表头,在顶部有一个列表头,分别用于指示行和列,表头各单元格的显示内容和样式可按需要进行定制。行和列表头也可按实际需要进行显 示和隐藏;
  6. 可对指定行或列进行冻结,在对其它行或列进行滚动操作时,被冻结的行和列始终保持可见;
  7. 可对网格线的显示和隐藏等进行设置。
Agile Grid为开放源代码项目,可通过访问网址:http://sourceforge.net/projects/agilegrid/了 解其最新的进展或 提供建议。

二 样例展示

Sortable Table

图一 按列进行排序(存在合并单元格的列不进行排序)


Scalable column

图二 列宽可根据实际窗口的大小自动地进行扩缩


Popup cell editor

图三 带工具条的弹出式单元格编辑器(一)


Popup cell editor.

图四 带工具条的弹出式单元格编辑器(二)


Cell editor validator.

图五 单元格编辑校验器


Weekly Plan

图六 一个复杂电子表格的样例--双周工作计划

三 获取及安装方式

Agile Grid以Eclipse插件的方式发布,在Eclipse RCP 3.4 的开发环境中可通过如下方式安装该插件:

1)在Eclipse RCP 3.4的开发环境中,点击菜单“Help -> Software Updates...”,弹出软件更新对话框,如下图所示:

 Software Update

2)单击按钮“Add Site...”,弹出如下图所示的对话框,在“Location:”文本框中输入: “ http://agilegrid.sourceforge.net/agilegrid/updatesite/ ”,然后单击“OK”按钮;

Add Site


3)如下图,在“Software Updates and Add-ons”对话框加增加了刚才所添加的Agile Grid更新站点,单击该站点可显示最新的Agile  Grid特性,选中该特性然后单击按钮“Install...”并按照对话框的提示安装Agile Grid插件,重新启动Eclipse。

Software Update


4)在Eclipse RCP 3.4开发环境中依次单击菜单“Window -> Show View -> Other...”,弹出如下对话框,展开目录树中“General”节点,选择“Agile Grid View”节点,并单击“OK”按钮即可显示“Agile Grid View”视图
Show View


5)“Agile Grid View”视图如下图所示,用户可在该视图中体验Agile Grid的各种功能展示,也可以开发基于Agile Grid插件的新应用。

Agile Grid View