`
shaorui23
  • 浏览: 22239 次
  • 性别: Icon_minigender_1
  • 来自: 惠州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

ext中关于替换布局中的panel

 
阅读更多

今天做任务碰到一个问题:左边是一颗树,右边是一个grid的布局;当点击左侧树的时候可以动态的“替换”掉右边的grid。

由于右侧的grid是被二次封装过的,所以不能简单的用之前替换url的方法去解决这个问题。所以想到动态去替换panel中的item方法。这个有两个解决的方法,解法不同但是本质上都是操作一个先定义好的容器panel,再对其中需要的组件进行操作。

(以下的示例没有贴完全的代码,部分实现需要自己去完成,如触发事件如何去写)
第一个:在viewport的center里先定义好一个容器panel,然后把要替换的组件加到此panel里

示例代码:

//定义主面板
this.panel=newExt.Panel({
region:'center',
margins:'1111',
layout:'fit',
items:[viewPanel]
});


new Ext.Viewport({
layout:'border',
title:'替换右侧grid',
items:[this.tree,this.panel]

)}

//这里填写树的触发事件

tree.on("click", function(){

this.panel.add(viewPanel);//
this.doLayout();

})

第二个:第二个方法不是用“替换”,而是利用新的布局cardLayout,具体示例:

varpanel=newExt.Panel({
region:'center',
layout:'card',
activeItem:0,
items:[initPanel] //初始化时需要显示的grid
});

tree.on("click",function(){

panel.add(xxx); //xxx代表你要添加的grid
panel.getLayout().setActiveItem(1); //利用cardLayout特有的方法,直接显示第二个item
});

分享到:
评论

相关推荐

    Extjs 重写Panel添加click事件

    在Ext JS这个强大的JavaScript框架中,Panel是一种常用的组件,用于构建复杂的用户界面。Panel提供了丰富的功能,包括布局管理、工具栏、标题、可配置性等。然而,有时我们需要对Panel进行自定义,例如添加或修改...

    EXT dojochina Ext方法重写.rar

    EXT dojochina Ext方法重写是一个关于EXT.js框架中函数重写的专题。EXT.js是一个流行的JavaScript库,用于构建富客户端应用,它提供了丰富的组件、布局管理和数据绑定机制。在EXT.js中,方法重写是一种常见的实践,...

    ext4 表格分页实例代码

    EXT JS中的表格分页通常通过Grid Panel组件实现,该组件可以与数据存储(Store)配合,数据存储负责管理数据,包括加载、过滤、排序和分页。分页功能由Pager Toolbar组件提供,它是一个可自定义的工具栏,包含导航...

    Ext一个登陆的小例子 (java+servlet)

    EXT的布局系统是其强大之处,它允许开发者灵活地组织组件,如面板(Panel)、窗口(Window)等。在登录示例中,`FromPanel`通常被用来展示登录表单,包含用户名和密码输入框,以及登录按钮。`FromPanel`的布局可以是...

    ext多文件上传

    首先,EXTJS中的`Ext.form.Panel`组件是实现多文件上传的基础。我们需要创建一个包含`Ext.form.FileField`的表单,这是EXTJS中用于处理文件输入的组件。在`FileField`中,我们可以通过设置`multiple`属性为`true`来...

    Ext 学习总结 pdf版

    - **ExtJs2.0学习笔记(Ext.Panel篇一/二/三/四)**:这一系列内容分别讲述了`Ext.Panel`的不同方面,如布局管理、事件处理等。 - **ExtJs2.0学习笔记(组件总论篇)**:这是一个综合性的章节,概括了Ext JS 2.0中各种...

    ExtJS2.2学习:再论el和contentEl的区别

    这意味着`el`主要用于创建或绑定组件的外壳,而不会将div内的内容自动迁移到Panel中。 2. **contentEl(Content Element)** `contentEl`属性则不同,它用于指定一个已经存在的DOM元素的ID,该元素会被作为组件的...

    使用OOP的方式扩展ExtJS UI组建 - 更新版

    例如,我们可以创建一个名为`MyCustomGrid`的类,继承自`Ext.grid.Panel`,并在子类中添加新的功能,如自定义渲染器、事件处理等。 在OOP的视角下,继承允许我们保持代码的复用性。通过覆盖父类的方法,我们可以...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -v0.2beta2版本中关于PersistChildren(true)的描述有误,这个是设计时属性,和运行时是否保持状态没有关系。 -修正CheckBox控件的CheckedChanged事件会被触发两次的BUG(Data PostBack->AutoPostBack, Event ...

    birt整合到web项目中遇到的问题及解决

    在ExtJS的Panel中嵌入BIRT报表,可以创建一个新的Panel组件,并将包含BIRT报表的IFrame作为其HTML内容。如示例所示,IFrame的src属性指向BIRT Viewer的URL,带上报表设计文件名及所需参数。 5. **BIRT Report ...

    ExtJs4_笔记.docx

    - **Ext.Panel**、**Ext.window.Window**和**Ext.container.Viewport**:面板、窗口和布局控件的使用。 - **Ext.tab.Panel**:详细讲解了选项卡的创建和操作。 - **Ext.ListView**和**Ext.view.View**:数据视图的...

    extjs4.0技术

    var panel = Ext.create('Ext.panel.Panel', { layout: 'fit', items: [ { xtype: 'grid' } ] }); ``` 2. **Border 布局**: - 边框布局允许将父容器划分为北、南、东、西和中心五个区域。 - 每个区域可以...

    Extjs5.0 Mini 轻量级 使用方式概述 引用讲解 Extjs5.0 gray

    这里的`path/to/`应替换为实际的ExtJS库文件路径。引入库后,ExtJS会自动执行初始化过程。 接下来,我们需要创建一个应用的基本结构。ExtJS 5.0引入了MVVM(Model-View-ViewModel)架构模式,简化了应用的组织。...

    extjs 3.1 组件 使用

    在调整布局或者改变主题时,这些图片可能会被替换或修改。 `js`目录是核心部分,存放了ExtJS 3.1的JavaScript库和相关的脚本文件。其中,`ext-all.js`或`ext-core.js`是基础库,包含了许多基础组件和功能。`ext-...

    JavaScript.-Extjs基础学习笔记

    在这个例子中,`MemoryProxy`被用作数据源,但也可以替换为`ScriptTagProxy`等其他代理,以便从远程服务器加载数据。最后,`GridPanel`对象被创建,指定了渲染目标、数据源、列模型、选择模型等属性。 ### 总结 ...

    帆软用法总结(各模块语法规则,系统集成)

    - 设置Panel的基本属性,如ID、标题、布局等。 - 通过HTML代码创建一个IFrame元素,该元素用于加载报表内容。 3. **IFrame配置:** - 定义IFrame的ID为`me.reportFrameId`。 - 设置IFrame的`src`属性为报表...

Global site tag (gtag.js) - Google Analytics