tgr*_*een 4 javascript extjs extjs4.2
如果您使用默认按钮的代码:
Ext.Msg.show({
title:'Save Changes?',
msg: 'You are closing a tab that has unsaved changes. Would you like to save your changes?',
buttons: Ext.Msg.YESNOCANCEL,
icon: Ext.Msg.QUESTION
});
Run Code Online (Sandbox Code Playgroud)
窗口上的按钮按顺序是 - 否 - 取消.我希望他们在订单取消 - 不 - 是的,我的应用程序的一致性.有没有办法添加不同的配置或根据我的需要更改它?
默认按钮只是在Ext.window.MessageBox.makeButton()私有方法中创建,基于Ext.window.MessageBox.buttonIds配置并基于位掩码显示/隐藏buttons: Ext.Msg.YESNOCANCEL.
所以我们只需要覆盖buttonIds配置和位掩码:
Ext.define('Ext.overrides.MessageBox', {
override: 'Ext.window.MessageBox',
OK: 1, //0001
CANCEL: 2, //0010
NO: 4, //0100
YES: 8, //1000
OKCANCEL: 3, //0011
YESNO: 12, //1100
YESNOCANCEL: 14, //1110
buttonIds: [
'ok', 'cancel', 'no', 'yes'
]
});
Run Code Online (Sandbox Code Playgroud)
Ext.Msg/ Ext.MessageBox是单例,最初定义为覆盖Ext.window.MessageBox 之前的实例(检查Ext.MessageBox代码的最后几行).
所以我们必须覆盖Ext.Msg/ Ext.MessageBox以及:
Ext.Msg = Ext.MessageBox = new Ext.window.MessageBox();
Run Code Online (Sandbox Code Playgroud)
检查这个简单的小提琴.
| 归档时间: |
|
| 查看次数: |
506 次 |
| 最近记录: |