2013-05-10 61 views
2

我创建的延伸ext.window.messagebox 一个新的视图类,但是当我试图表明它,它给了我一个错误:在ExtJS的扩展信息框4

Uncaught TypeError: Cannot call method 'setVisible' of null 

我的代码:

Ext.define('view.forms.MyBox', { 
extend : 'Ext.window.MessageBox', 
alias : 'widget.info', 
xtype : 'forms-info', 

resizable : false, 
//closable : false --> removed 
layout : 'vbox', 
padding : 5, 
width : 400, 
height : 160, 

showMessage: function() { 

    console.log('show message') 

    var me = this; 

    me.show({   
     title: 'Title foo!', 
     msg: 'test', 
closable : false, // added here 
     icon: Ext.MessageBox.WARNING,    
    });  
} 
}); //eoc myBox 

这可能的原因是什么?

+1

我想你需要添加这个:'this.callParent(arguments)' – 2013-05-10 03:39:31

+0

请附上完整的代码 – Hariharan 2013-05-10 04:13:17

+0

好吧,我设法通过删除可关闭:false配置并将其添加到me.show()函数来解决此问题。但我仍然不明白为什么?我更新了我的代码... – xiriusly 2013-05-10 05:58:58

回答

0

问题是你拼错了“可关闭” - 你把它当作“可关闭”。

编辑:对不起 - 这是不正确的。我已经删除了这个例子。

+0

我认为这是不正确的,你可能已经删除了错误,但是api中的实际拼写是'可关闭的'而不是'可关闭的'。然而,“关闭工具”出现。 – xiriusly 2013-05-14 01:56:01

0

你在哪里创建消息的实例?

我想你需要你的代码后,要做到这一点..

var win = Ext.create('iportfolio.lib.view.forms.MyBox',{}); 

win.show();

我希望这会帮助你。