`

Ext 组件操作总结——会不断完善

阅读更多

1、Ext.Component

  • 该组件在渲染的时候会默认的创建div DOM,是根据this.autoEl的配置来创建的,默认this.autoEl为 div,创建后保存在 this.el中
  • autoShow 设为true,渲染时会强制显示隐藏的元素,实际上会执行以下代码
           if(this.autoShow){//自动显示
                this.el.removeClass(['x-hidden','x-hide-' + this.hideMode]);
            }

        该参数的设置,比如在多标签中如果想渲染隐藏标签的组件,并且渲染的时候又想计算高度和宽度,因为隐藏后,组件高度宽度不可见,把标签的子元素设为自动显示会实现这个效果。

  • hideMode 隐藏模式,可支持的值有"visibility" (css中的visibility),"offsets"(负偏移位置)和"display"(css中的display)-默认为“display”,第一个和第二个虽然不可见,但仍然影响布局(即有高度和宽度)。最后一个除了不可见也不会影响布局。

2、Ext.grid.GridPanel

 

2.1、Ext.grid.ColumnModel 中renderer的应用

 

{
      header : '性别',
      width : 60,
      dataIndex : 'sex',
      hidden : true,//是否隐藏
      sortable : true,// 是否能排序
      menuDisabled : true,//True表示禁止列菜单。默认为fasle。
      renderer : function(value, meta, record) {//根据返回值处理
        if (value == "1") {
          return "男";
        } else if (value == "0") {
          return "女";
        }
      }

 

renderer指定的函数中各参数意思为

 

renderer: function(value, metaData, record, rowIndex, colIndex, store) {

    return value;

}

  • value:对应的cell中的值
  • metaData:单元格元数据对象,可以设置该单元格的如下属性

css:单元格CSS样式,作用在td元素上
attr:一段HTML属性的字符串,将作用于表格单元格内的数据容器元素(如'style="color:red;"')
cellAttr:设置单元格的属性
style:单元格的样式
id:单元格id
value:单元格值

  • record:当前行记录数据
  • rowIndex:当前行Index
  • colIndex:当前列Index
  • store:gridPanel 中store

利用renderer可以方便的处理每个单元格中的数据和实现

 

2.2、Ext.grid.ColumnModel 中一些属性的说明与功能

 

  1.  sortable : true,// 是否能排序
  2.  menuDisabled : true,// 隐藏右侧小箭头菜单

例如:

 

{
      header : '密码',
      width : 85,
      dataIndex : 'password',
      sortable : false,// 是否能排序
      menuDisabled : true,// 隐藏右侧小箭头菜单
      editor : new Ext.form.TextField({
            allowBlank : false,
            minLength : 6,
            maxLength : 20
          })
    }

 

2.3 Ext.grid.RowSelectionModel

 

获取grid的选中的第一行的方法为 grid.getSelectionModel().getSelected()

获取grid的所有选中的行的方法为 grid.getSelectionModel().getSelections()

 

 

3、Ext.TabPanel

      true不渲染隐藏标签中的组件,false会渲染

      内置地,Tab面板是采用Ext.layout.CardLayout的方法管理tabs。此属性的值将会传递到布局的Ext.layout.CardLayoutdeferredRender配置值中, 以决定tab面板是否只有在第一次访问时才渲染(缺省为true)。

      注意如果将deferredRender设为true的话, 又使用form的话,那表示只有在tab激活之后,全部的表单域(Fields)才会被渲染出来, 也就是说不管是提交表单抑或是执行getValues或setValues都是无用。

 

4、Ext.FormPanel

 

4.1、Form组件(输入框、单选等)

      Form组件基类为Ext.form.Field,公共方法有:

 

  • reset:重置此元素的值到原始值,并且清除所有无效提示信息。对于下拉选项该方法很有用

 

4.2 Form组件中的表单

 

     4.2.1、Ext.form.TextField   属性emptyText和emptyClass 空字段中显示的文本和样式

         4.2.2、Ext.form.ComboBox 关于该组件几个重要属性的说明

     

           emptyText : '请选择',//默认显示的文本

           emptyOption: false,//false则下拉列表中不显示“请选择”,true则显示(内部组件扩展了该属性cext)

           autoSelect: false,//true表示自动选择下拉列表中默认的第一个值(如果还没有选择的话),false则不会选择默认第一个值(除非已经选择了)

           submitValue:false,//False表示清楚name属性来达到不能提交该属性值,设为true将会提交隐藏域和元素本身域

     

    submitValue该属性对于其他表单项也适应

     

    5、布局器TableLayout

         当把容器的布局器设为layout='table'时,如果想设置布局器中table的样式,可以在this.layoutConfig中设置tableAttrs,例如

      layoutConfig: {
            tableAttrs: {
                style: {
                    width: '100%'
                }
            },
            columns: 3
        }

     另外td的样式设置为:在容器items中添加属性cellCls,利用新加的css样式来控制td,例如

    items:[{
       xtype : 'panel',
       cellCls : '自定义css样式'
     }
    ]

     

     6、布局器Ext.layout.BorderLayout

          这是一种多面板,面向应用程序UI的布局风格,可支持多个套嵌面板,各区域间自动分隔和扩展/收缩功能。只有该布局方式才能动态改变各区域大小、隐藏显示各区域。布局后,整个区域不会显示滚动条。该布局器中几个常用的配置项说明如下

    • collapseMode    默认下,可关闭的区域是通过点击区域标题条上的工具按钮来控制区域是否关闭的(collapsible设为true,并且设置了区域标题)。当collapseMdoe被设置为'mini'时,区域的分隔条中间会有一个小小的关闭按钮。 在'mini'模式下区域会闭合成为一个比常规模式下更细小的水平条。  默认下collapseMode是设置为undefined,支持两种值undefined和'mini'。注意如果可关闭的区域没有标题条,要想实现隐藏/显示区域效果,只能把collapseMode设置为'mini'以便标题条没有渲染也可以由用户来关闭区域。
    • collapsible  True表示为允许用户闭合此区域(默认为false)。如为true,区域上的title bar(前提是设置了title bar)将会渲染出“展开/收缩”的按钮,否则将不会显示。
    • split   True表示可允许用户动态调节区域的大小(缺省为false)。当split=true,通常需要指定区域的minSize和 maxSize。
    • margins  作用在区域上的外补丁对象,对象的格式如{left: (左边距), top: (上边距), right: (右边距), bottom: (下边距)}。
    • cmargins   作用在区域闭合元素上的外补丁对象,对象的格式如{left: (左边距), top: (上边距), right: (右边距), bottom: (下边距)}。

    7、Ext.Window

     

    modal: true,//true 表示为当window显示时对其后面的一切内容进行遮罩

    分享到:
    评论

    相关推荐

      EXT中文教程--经典学习资料

      适配器负责解决跨浏览器的差异,让EXT组件能够在各个环境中正常工作。 核心Core: EXT的核心组件和API是其基础,包括DOM操作、事件管理、数据存储等。理解这些核心概念,有助于你构建高效且健壮的EXT应用。 总的来...

      GXT组件使用教程3——Column Group

      GXT的工具性体现在其丰富的组件库和强大的功能集,使得开发者能够高效地构建功能完善的Web应用。 在实际项目中,你可能还需要考虑性能优化,例如延迟加载分组数据,以减少初始页面加载的时间。同时,了解如何适配...

      JSP源码——图书管理系统(struts+hibernate+spring+ext).zip

      《JSP源码——图书管理系统(struts+hibernate+spring+ext)》是一个典型的Java Web应用程序,它展示了如何利用Struts、Hibernate、Spring和Ext这四大技术来构建一个功能完善的图书管理系统。这个系统可能包括图书的...

      Ext JS in Action (Final Edition).pdf

      1. **事件处理机制**:Ext JS提供了一套完善的事件处理系统,允许开发者通过绑定事件监听器来响应用户的交互行为。 2. **组件体系结构**:Ext JS基于组件模型构建,所有UI元素都是组件,这使得它们易于重用和组合。 ...

      combobox Ext之扩展组件多选下拉框

      本篇将重点讲解ExtJS中的一个扩展组件——多选下拉框,即“combobox”。 在ExtJS中,ComboBox是一个基本的输入组件,它结合了文本输入框和下拉列表的功能。默认情况下,ComboBox只允许用户选择一个选项。但是,通过...

      ThinkPHP+Ext学生信息管理系统示例

      Ext是一个强大的JavaScript库,用于构建富客户端应用,它提供了丰富的UI组件,如表格、树形结构、表单等,使得开发者可以快速构建出美观且功能完善的用户界面。在本系统中,Ext主要用于实现前端展示和交互,如学生...

      ext入门学习文档

      #### 六、如何获取界面上的元素——Ext的选择器 - **Ext.Element**:核心对象,提供了跨浏览器的DOM方法和属性的统一接口。 - **Ext.get() 方法**:提供内置缓存,可以高效地获取DOM节点,并支持跨浏览器兼容性。 ...

      spring+ext+dwr.rar_ext dwr_ext java_java 用户管理_spring e_spring ex

      接下来,Ext是一个用于创建复杂Web界面的JavaScript库,它提供了丰富的组件和布局选项,可以构建出美观且交互性强的用户界面。在这个用户管理系统中,我们可能使用了Ext的Grid Panel来展示用户列表,Form Panel来...

      Extjs upload(ext官网例子)

      这个例子是基于ExtJS框架的一个组件——FileUploadField,它允许用户在Web页面上选择并上传文件。以下是对这个功能的详细讲解: 1. **FileUploadField组件**: ExtJS的FileUploadField是FormPanel的一个特殊字段,...

      图书管理系统(struts+hibernate+spring+ext)130221.zip

      EXT组件可以与后端进行异步通信(AJAX),实现实时的数据交互,无需刷新页面即可完成图书查询、借阅等操作。 这四个框架的整合使用,使得图书管理系统的开发变得更加高效和灵活。Struts处理请求,Spring管理依赖,...

      图书管理系统(struts+hibernate+spring+ext)101毕业设计—(包含完整源码可运行).rar

      这个项目采用了经典的Java企业级开发框架——Struts、Hibernate和Spring,以及Ext作为前端UI组件库,构建了一个功能完善的图书管理系统。 1. Struts框架: Struts是Apache组织下的一个开源项目,主要用于构建基于...

      安卓Andriod源码——文件浏览返回路径.zip

      这个压缩包"安卓Andriod源码——文件浏览返回路径.zip"包含了实现这一功能的相关源代码,特别是关于文件浏览时的返回路径处理。在Android开发中,理解并掌握这部分源码对于提升应用的用户体验至关重要。 首先,我们...

      extjs2.2和2.3的官方包

      5. **增强的DOM操作**:优化了DOM处理,提升了组件操作的灵活性和响应速度。 6. **更完善的API文档**:2.3版本的文档相比2.2更加详尽,便于开发者查阅和学习。 **压缩包内容** 压缩包中的`examples`文件夹包含了...

      ExtJS 7.6 SDK trial

      7. **国际化(Internationalization)**:7.6 SDK可能进一步完善了多语言支持,让开发者能轻松地为全球用户提供本地化应用。 8. **开发工具升级**:更新的Sencha CMD或WebPack插件可能是SDK的一部分,帮助开发者更...

      ExtJS2实例教程教

      ### ExtJS2实例教程知识点详解 #### 架构与特性 **ExtJS**是一个功能强大的前端框架,专门设计用于构建富互联网应用(RIA)。...随着技术的不断演进,ExtJS也在持续更新和完善,保持其在前端开发领域的领先地位。

      Ext+dwr+Hibernate+struts进销存管理系统终于完工(含源码)

      本文将详细介绍一个基于流行技术栈——ExtJS、Direct Web Remoting(DWR)、Hibernate和Struts构建的进销存管理系统,以及它们各自在系统中的作用和实现方式。 **ExtJS:强大的前端框架** ExtJS是一款基于...

      Android技术内幕:系统卷

      - **系统卷优化**: Google在Android 10中引入了新的分区——/system_ext,这个分区的设计目的就是为了更好地管理那些频繁更新的系统服务和组件,从而提高了整个系统的稳定性和性能。 - **安全增强**: 在Android 11中...

    Global site tag (gtag.js) - Google Analytics