用友TurboCRM页面详解.pdfVIP

  • 26
  • 0
  • 约1.66万字
  • 约 17页
  • 2017-06-02 发布于河南
  • 举报
用友TurboCRM页面详解

第1章 页面布局 1.1. 概述 系统的页面均采用 PHP+EXTJS 方式实现,所有页面全部通过 TUIPage 类进行绘画输出。同时系统 对经常用到的显示方式使用 EXTJS 控件进行了布局封装。在业务开发过程中,只需要针对所使用的布局 数据按照一定的格式组织后,调用该布局封装就可以完成页面显示。布局封装 UML 图如下所示: TUIPage:页面输出类,输出页面的Header,Body 以及一些其它公共函数,在生成Body 时会调用 TLayout 类的方法生成主页面内容。代码如下: $page = new TUIPage(); echo $GetHeader(/js/tlist.js;/js/tquery.js); echo $GetBody($layout); echo $GetTail(); TLayout:布局基类,定义了一个布局所需要的元素及其相关方法:如 Title,Button、Toolbar、窗口左侧、 右侧、主窗口内容等。子类需要实现其 layout()方法完成布局,同时也可以重写本类方法修改 元素显示。 TObjectLayout:标准对象布局基类:定义了一个标准对象在 LIST 、EDIT 、VIEW 布局时所用到的公共方 法,主要是对象权限的相关方法(是否可读、可写、可导出、可导入等)。其子类包括:TListLayout、 TViewLayout、TEditLayout,这三种对象布局将在”标准页面布局” 中详细说明。 TConfigLayout:非对象的布局基类:重写了 TLayout 的 layout()方法对布局元素进行了组织,子类需要 实现其 layoutMainInfo()方法完成主页面布局,并提供了一些其它公共方法(如按扭、标题等) 。 其中的某些子类对象将在”其它布局” 中详细说明。 TWizardLayout: 向导页面布局基类:同 TConfigLayout,也重写了 TLayout 的 layout()方法对布局元素 进行了组织, 子类需要实现其 layoutMainInfo()方法完成主页面布局。同时也提供了对页面数据 的存取和相关按扭(上一页、下一页、完成、取消)的方法定义。 TLayoutInfo、TLayoutTable、TLayoutCell:页面的布局基础元素,系统的标准对象VIEW 、EDIT 页面 布局可以在 KEY 中进行配置,同时也可以手动组织这三个类完成 VIEW 和 EDIT 页面布局。 页面显示同 TEditLayout 和 TViewLayout 。代码示例如下: $layoutTable = new TLayoutTable(4, array(tc_weekly_model_define)); $layoutTable-addCell(Weekly.Industry,1); $layoutTable-addCell(Weekly.Industry,0,3); $layoutTable-addCell(Weekly.ProjectName,1); $layoutTable-addCell(Weekly.ProjectName,0,3); $layoutInfo = new TLayoutInfo(OBJ_WEEKLY, 0); $layoutInfo-addTable($layoutTable); $layout-setLayoutInfo($layoutInfo); 1.2. 标准对象布局 标准对象布局包括:TListLayout、TEditLayou、TViewLayout 三种,其页面数据的显示分别在 tlist.js 、 tedit.js 、tview.js 进行了详细的定义,在使用这三种布局时,只需要对显示数据进行组织,其中: TListLayout: 其数据依赖于对象的$model 的listAttr 和 getDatalist()方法。 TEditLayout: 其数据依赖于对象的”KEY-查看页面布局”和$model 的getDataObject ()方法。 TViewLayout:其数据依赖于对象的”KEY-编辑页面布局”和$model 的getDataObject ()方法。 1.2.1. TListLayout

文档评论(0)

1亿VIP精品文档

相关文档