跟我一起学extjs5(22--模块Form的自定义的设计)

来源:互联网 发布:淘宝c店还能做吗 编辑:程序博客网 时间:2024/04/29 22:47

跟我一起学extjs5(22--模块Form的自定义的设计)


        前面几节完成了模块Grid的自定义,模块Form自定义的过程和Grid的过程类似,但是要更复杂一些。先来设计一下要完成的总体目标。
        1、可以有多个Form方案,对应于显示、新增、修改、审核、审批等功能;
        2、对于上述各种功能可以选择不同的Form方案,比如说修改可以有几个方案,各个操作员可以选择他们感兴趣的Form方案来进行数据的修改。
        3、每个Form方案中可以定义若干个字段分组(FieldSet或FieldContainer)。
        4、每个字段分组中可以放置若干个字段。
        5、每个Form方案可以定义成Tab或者Accordion显示方式。
        6、可以放置下级模块的Grid在Form中,即master-detail方式。

        具体的内容可以看我以前的博客:http://blog.csdn.net/jfok/article/details/24472139,下面我贴几个图显示一下自定义生成的form界面,好有个直观的了解。
        1、最基本的Form界面,上面只有一个FieldSet,里面有若干个字段,还有一些操作按钮。


        2、由二个FieldSet组成的Form,其中某些可以折叠。



        3、在Form中加入子模块的Grid。


        4、在Form中加入Tab的样式。

        5、某些特殊格式的Form表。


        6、一个综合的比较复杂的例子:这个例子中加入单条记录的多个子模块,可以协同进行操作。





        上面列出了一些在原来版本已经可以完成的Form类型,以上例子都是完全根据配置信息由extjs解释执行而生成的。可以由管理人员在系统中直接新增和修改任何的Form项,由此完成了模块Form完全自定义的功能。
        在展示的FormField中,除了可以生成字符Field,也可以完成日期、数值、Combo等复杂类型的字段,只要想得出来的功能,就能够写成配置,然后解释后展示出来。在下面的实现过程中,由于没有前后台的交互,我只会做一个比较简单的例子来展示如何自定义Form的实现。






2 0