Ext 中panel 动态添加组件 不显示 求助~

问题描述

整个页面是一个viewportviewport中的“center”域里放的是一个tabPaneltabpanel中有3个panel:tab1,tab2,tab3tab3中有3个items,其中有一个是gridpanelgridpanel中有个button,现在就是想通过点击这个button,给tab3动态添加一个panel然后然后调用tab3.doLayout(),结果没有更新,但是这个tab3确实已经加进去了这个panel,就是不显示,谁知道原因伐~~~

解决方案

解决方案二:
varspotsgrid=Ext.create('Ext.grid.Panel',{itemId:'spotsgrid',height:400,title:'title1',selModel:Ext.create('Ext.selection.CheckboxModel'),store:Ext.data.StoreManager.lookup('simpsonsStore'),columns:[Ext.create('Ext.grid.RowNumberer'),{header:'1111',dataIndex:'name'},{header:'222',dataIndex:'name'},{header:'333',dataIndex:'email',flex:1}],bbar:{items:[{text:'button1',handler:function(){alert(viewport.items.getAt(1).items.getAt(2).title);viewport.items.getAt(1).items.getAt(2).items.add(createSpotStatistic());alert(viewport.items.getAt(1).items.getAt(2).items.items[2].title);//viewport.items.getAt(1).items.getAt(2).items.items[2].show();//viewport.items.getAt(1).items.getAt(2).items.items[2].doLayout();//tabs.doLayout();viewport.items.getAt(1).items.getAt(2).doLayout();alert(Ext.getCmp('tab3').doLayout().layout);//alert(tab3.items.length);//tabs.doLayout();//viewport.doLayout().show();//alert(tab3.doLayout().items.length);//spotsgrid.doLayout();//tabs.doLayout();//tab3.doLayout();//tabs.items.getAt(2).items.getAt(3).show();//Ext.getCmp('viewport').items.getAt(1).items.getAt(2).doLayout();//alert(tab3.items.length);//alert(Ext.getCmp('viewport').items.getAt(1).getActiveTab().items.add(createSpotStatistic()));}},{text:'button2'},{text:'button3'},{text:'button4'}]},dockedItems:[{xtype:'pagingtoolbar',store:Ext.data.StoreManager.lookup('simpsonsStore'),//samestoreGridPanelisusingdock:'bottom',displayInfo:true}]});vartab1={title:'tab1',bodyPadding:10,items:[form1]};vartab2={title:'tab2',bodyPadding:10,html:'tab2'};/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////tab3=Ext.create('Ext.panel.Panel',{deferredRender:false,id:'tab3',layout:'fit',//xtype:'Ext.Component',title:'tab3',//bodyPadding:10,items:[date,spotsgrid]});tabs=Ext.create('Ext.tab.Panel',{width:300,height:200,activeTab:0,region:'center',items:[tab1,tab2,tab3]});//tab3.items.add(createSpotStatistic());//tabs.doLayout();//alert(tab3.items.getAt(3));//for(iintabs.items){//alert(tabs.items[i]);//}//tab3.add(date);//Ext.getCmp('').add//vartest=tabs.items;//alert(test.length);//alert(test.prototype);//tabs.add(tab3);//alert(tabs.items[0].title);//test//alert(tabs.items);//alert(tabs.items.getAt(2).id);//tabs.items[3]=tab3;viewport=Ext.create('Ext.Viewport',{id:'viewport',layout:'border',items:[left,tabs,{region:'north',margins:'5550',cls:'ce',bodyStyle:'background:#f1f1f1',html:'<tablewidth="100%"><tr><tdalign="center"><fontclass="title">111111</font></td></tr></table>'},{region:'south',margins:'5550',cls:'ce',bodyStyle:'background:#f1f1f1',html:'<tablewidth="100%"><tr><tdalign="center"><fontclass="title">1111</font></td></tr></table>'}],renderTo:document.body});}

时间: 2024-09-30 21:54:59

Ext 中panel 动态添加组件 不显示 求助~的相关文章

Android使用addView动态添加组件的方法_Android

在项目开发中,我们经常需要进行动态添加组件,其中可添加的部分有两项:布局和组件  其中,添加的布局主要有RelativeLayout型(相对布局)的和LinearLayout(线性布局) 添加的组件主要有文本显示框,编辑框,按钮等组件.  下面,就让我们来进行实现: 首先我们创建一个新的项目,删除MainActivity.class中没有的代码,仅留下protected void onCreate(Bundle savedInstanceState)函数往布局文件中添加一个新的组件: 1. ad

Android使用addView动态添加组件的方法

在项目开发中,我们经常需要进行动态添加组件,其中可添加的部分有两项:布局和组件 其中,添加的布局主要有RelativeLayout型(相对布局)的和LinearLayout(线性布局) 添加的组件主要有文本显示框,编辑框,按钮等组件. 下面,就让我们来进行实现: 首先我们创建一个新的项目,删除MainActivity.class中没有的代码,仅留下protected void onCreate(Bundle savedInstanceState)函数往布局文件中添加一个新的组件: 1. addV

元素-ext formpanel 动态添加组件到指定位置

问题描述 ext formpanel 动态添加组件到指定位置 每组checkbox下有一个添加按钮,点击按钮,给checkbox加元素 解决方案 怎么都没人回答,自己顶

Ext中如何动态生成一个form表单

问题描述 Ext中如何动态生成一个form表单,主要是表单里的item配置是会变的,根据数据库的数据会变.怎样动态生成这个表单呢. 问题补充:lizhi92574 写道 解决方案 var item, items = form.getForm().items;while ((item = items.last())) { //删除组件form.getForm().remove(item);form.remove(item);}form.add();//添加组件form.doLayout();解决方

在vb.net中如何动态添加控件ovalshape(求大神帮帮小弟)

问题描述 在vb.net中如何动态添加控件ovalshape(求大神帮帮小弟) 控件button在vb.net中可以动态添加,但是ovalshape却不能,如:(button的动态添加) dim mybutton as new button ...... mybutton.text="" ..."" mybutton.location=new point() .... me.controls.add(mybutton) addhandler mybutton.cli

jquery ext grid 实现动态添加,删除一行。急!!! 大神们求帮忙!10分

问题描述 jquery ext grid 实现动态添加,删除一行.急!!! 大神们求帮忙!10分 解决方案 Ext如何动态添加一行组件EXT增加删除一行 解决方案二: 添加http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.data.Store-method-add 删除,通过find找到记录,然后调用removehttp://docs.sencha.com/extjs/4.1.3/#!/api/Ext.data.Store-method-findhttp

母版页中不能动态添加tabpanel控件

问题描述 母版页中不能动态添加tabpanel控件 同样的代码在普通页面中可以 在母版页中不行 <div> <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <cc1:TabContainer ID="TabContainer1" runat="server" Height="

javascript的document中的动态添加标签实现方法_javascript技巧

document的高级篇中提供了节点操作的函数,具体包括:获取节点,改变节点,删除节点,替换节点,创建节点,添加节点,克隆节点等函数.我们可以利用这些函数动态改变html的节点. 1.JavaScript <script type="text/javascript"> function test1(){//对个节点的ID相同时候的情况 var myhref = document.getElementById('same'); window.alert(myhref.inne

WinForm的大Panel中均匀动态添加小Panel的问题

问题描述 需求:Panel作为一个大的容器,通过代码动态添加小Panel,如现实中的一个相片框能放x张一寸相片一样,只是这里换成动态的Panel且通过容器计算动态Panel的大小. 解决方案 解决方案二:根据大panel计算小的长宽,边距,放置不就行了解决方案三:比如说尺寸是x,每一个容器占用a,而间距是b,一共放n个容器,那么就是解a*n+(b(n+1)<=x;(n为整数)从中解出n.对于宽和高分别解出n1.n2,就知道横向几列.纵向几列.解决方案四:a*n+b*(n+1)<=x;解决方案五