问题描述
整个页面是一个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});}