[英]How to change button order in Ext.Msg?
我有一个要显示在我的应用程序中的MessageBox,并且指定“是”按钮必须在右侧。 如何更改YESNOCANCEL顺序? (也许在取消的情况下 ?)
这是我的实际代码:
Ext.Msg.show({
title: 'myTitle',
msg: 'myMessage',
buttonText : {
cancel : 'Cancel',
yes : 'Yes'
},
fn: function(btn) {
if(btn == 'yes') {
dodat();
}
}
});
Ext.Msg
是单例,因此与正常组件相比,它具有奇数的生命周期。 这意味着下面的代码可能应该在Ext.onReady
或App创建的早期执行。 这也将更改应用程序中所有警报的按钮顺序,因为Ext.Msg
是单例的:
var msgButtonBar = Ext.Msg.down("toolbar");
var okButton = msgButtonBar.items.items[0];
var yesButton = msgButtonBar.items.items[1];
var noButton = msgButtonBar.items.items[2];
var cancelButton = msgButtonBar.items.items[3];
msgButtonBar.removeAll(false);
msgButtonBar.add([cancelButton, noButton, yesButton, okButton]);
基本上,它只是对Singleton中的按钮重新排序。
我建议不要弄乱Ext.MessageBox
单例,而只是使用您选择的buttons
配置创建Ext.Window
的自定义扩展。
实际上,只是使窗口看起来像消息框一样,只是一些小的配置。 就像是:
var msgBox = new Ext.Window({
width: 300,
height: 150,
buttons: [{ text: 'Cancel', handler...}, { text: 'Yes', handler...}],
title: 'Alert',
modal: true|false,
html: 'Are you sure?'
});
msgBox.show();
如果样式不够完美,您甚至可以在此窗口配置中添加“ ext-mb-dialog”或任何类。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.