Ext.Msg.show({
title: 'Validation',
message: message,
height: 300,
scrollable: true,
buttons: Ext.MessageBox.OK
});
我遇到了这段代码的问题。对于这个特定的消息框,我希望高度为300并且可滚动为真,因为消息非常大。但是在调用此消息后,任何消息框(确认,警报,提示)似乎都会继承我不想要的高度和可滚动值。
我查看了Ext.Msg的show()方法的代码,它看起来像是传递给config的任何东西,即上面代码中的所有参数都被合并到所有Ext.Msg对象的默认配置中。这似乎发生在这一行:
config = Ext.merge({}, this.defaultAllowedConfig, config);
我尝试寻找一种方法,允许我在调用show后将所有默认值重置为默认值,但它看起来不像我可以。使用
Ext.Msg.defaultAllowedConfig.height = [some number];
由于两个原因不起作用,First defaulAllowedConfig仅在没有显示任何特定消息的默认值时使用,即提示警报或确认。其次,Sencha文档显示的默认高度设置为“auto”,这不是在此语句中传递的有效值。
有没有人知道解决这个问题的方法?对不起,这是一个很长的帖子,但我现在完全被卡住了。
答案 0 :(得分:2)
您可以为自定义消息框创建Ext.MessageBox
的新实例,而不是使用Ext.Msg
单例来解决问题。
然后你的代码看起来像这样:
Ext.create('Ext.MessageBox').show(
{
title: 'Validation',
message: message,
height: 300,
scrollable: true,
buttons: Ext.MessageBox.OK
}
);