2012-07-04 21 views
0

persomview是View類的ID。其部分定義如下;使用form.show()顯示視圖 - 邏輯問題

Ext.define('ProjPerson.view.person.PersonTab' ,{ 
    extend:'Ext.tab.Panel', 
    alias : 'widget.ptab', 
    id:'ptabid', ...... 
從另一視圖類控制器方法

現在,我調用PersonTab通過使用以下代碼來顯示;

var form = Ext.getCmp('ptabid'); 
form.show(); 

然後在螢火蟲它說form is not defined。我該如何解決這個問題?

+0

'Ext.getCmp()'查找組件實例。只是定義一個類並不意味着'Ext.getCmp()'會找到它。您的視圖類是否呈現? – Izhaki

+0

我可以'form.hide()',但不能'show.show()'。如果我能做到這一點,那將會很棒 –

回答

1

限定的itemId並用getCmp

itemId:'ptabid', 

一個的itemId可以用來作爲一種替代的方式來獲得的組件的引用時沒有對象的參考文獻可使用它。 http://docs.sencha.com/ext-js/4-1/#!/api/Ext.tab.Panel-cfg-itemId

,如果你想找到活動標籤,你可以使用

Ext.getCmp('center-region').getActiveTab() 

這裏「中心區」是從佈局。使用適當的佈局區域,您在那裏使用。