在extjs4中如何在另一个视图中获取一个视图的菜单项以启用它

时间:2013-09-05 13:44:25

标签: view menu extjs4

我在extjs工作。我将libraryCentralPanel视图设为 -

Ext.define('R.view.library.LibraryCenterPanel', {
alias:'widget.centralPanel',
initcomponent:function()
{
 var me = this;
 this.items = [{
 xtype: 'librarylistview',
 id:'librarylistview'
        }]; 
 me.fileMenu = Ext.create('Ext.menu.Menu', {
  ........ 
  }
}

及以上librarylistview包含在xtype中,代码为 -

Ext.define('R.view.library.LibraryListView',{
    extend: 'Ext.grid.Panel',
    alias : 'widget.librarylistview',
    store: 'LibraryFileStore',

  selModel:Ext.create('Ext.selection.CheckboxModel', {
  headerWidth: 40,
  showHeaderCheckbox: false,
  ignoreRightMouseSelection : false,

   listeners:{
        'select':function(record, index, e ){
    }
    }),

所以我想只在选择checkbox.other的时候启用filemenu我想保持它为禁用。那么如何在我的LibraryListView中获取librarycentralpanel的fileMenu以及如何在复选框选择中启用它。请有人帮帮我吗?

1 个答案:

答案 0 :(得分:2)

启用和禁用元素非常简单......

在您的侦听器函数中,只需查询要启用/禁用的元素:

...
if(checkboxValue){
    Ext.ComponentQuery.query('centralPanel')[0].enable();
}else{
    Ext.ComponentQuery.query('centralPanel')[0].disable();
}
...