2013-07-17 40 views
1

我想动态地添加一个新的面板或容器到Ext.tab.Panel。我想这样的代码:如何动态地将新面板添加到Ext.tab.Panel?

var panel = Ext.create('Ext.Container'); 
panel.title = 'From Code'; 
panel.iconCls = 'home'; 
panel.styleHtmlContent = true; 
panel.html = 'Hello from Code'; 

tabPanel.add(panel); 

但是,这给我的错误:

Adding a card to a tab container without specifying any tab configuration 

我可以添加使用对象文本样式新面板或容器,但我怎么做时,我构建手工制作一个新的物体? Ext.Container类本身没有title属性。

谢谢!

回答

2

你需要指定面板或容器iconCls和标题的配置,当你加入一个tabpanel

你这样做,但是,我认为这个问题是您在创建容器和设置iconCls,标题构造的方式。

var panel = Ext.create('Ext.Container', { 
     title: 'From Code', 
     iconCls: 'home', 
     html : 'Hello from Code' 
    }); 



var tab = Ext.create('Ext.TabPanel', { 
    fullscreen: true, 
    tabBarPosition: 'bottom', 

    defaults: { 
     styleHtmlContent: true 
    }, 

    items: [ 
     { 
      title: 'Home', 
      iconCls: 'home', 
      html: 'Home Screen' 
     }, 
     { 
      title: 'Contact', 
      iconCls: 'user', 
      html: 'Contact Screen' 
     } 
    ] 
}); 

tab.add(panel);