2011-10-14 44 views
1

我在面板内有一个面板作为一个项目,以及其他对接项目。 由于某种原因它没有出现。 这些东西添加到主面板:Sencha触摸面板内部面板没有显示

MarketMakerApp.views.businessInfo = new Ext.Panel({ 
     id: 'businessInfo', 
     layout: 'fit', 
     html: '<br /><br /><br /><div>{ id } </div>' + '<div>{ title }</div>' 
     //html: 'This is the business info view' 
    }); 

    MarketMakerApp.views.businessTabbar = new Ext.TabBar({ 
     dock: 'bottom', 
     ui: 'dark', 
     items: [ 
      { 
       text: '1', 
       iconCls: 'info', 
       hander: function() { 
        MarketMakerApp.views.viewport.setActiveItem('businessInfo', {type: 'slide', direction: 'left' }); 
       } 
      }, 
      { 
       text: '2', 
       iconCls: 'star', 
       hander: function() { 
        this.add(MarketMakerApp.views.businessInfo); 
        this.setActiveItem(2); 
       } 
      }, 
      { 
       text: '3', 
       iconCls: 'map', 
       hander: function() { 
       } 
      } 
     ] 
    }); 

和主面板是这样的:

MarketMakerApp.views.businessContainer = new Ext.Panel({ 
     id: 'businessContainer', 
     layout: 'fit', 
     dockedItems: [ 
      MarketMakerApp.views.businessTypeListToolbar, 
      MarketMakerApp.views.businessTabbar 
     ], 
     items: [ MarketMakerApp.views.businessInfo] 
    }); 

使用TabBar和工具栏都出现了罚款,但我不能看到的businessInfo面板。 任何建议,将不胜感激。

p.s.我与Tabpanel一直苦苦挣扎,现在放弃使用Tabbar。

回答

0

我没有在创建面板(或任何你的观点是)有任何成功的编程方式。这里有一些代码可以使用这种方法。

添加initComponent功能,以您的businessContainer像下面而不是businessContainer面板上设置的项目:

initComponent: function(){ 
    Ext.apply(this, { 
     items: [ 
      MarketMakerApp.views.businessInfo 
     ] 
    }); 
    MarketMakerApp.views.businessContainer.superclass.initComponent.apply(this, arguments); 
}