日期:2014-05-16  浏览次数:20431 次

ExtJS4扩展MessageBox

?

1、MsgBoxK.js:

?

(function() {

	Ext.define('My.MsgBox', {

				extend : 'Ext.window.MessageBox',

				alternateClassName : ['My.Msg'],

				initComponent : function() {

					var me = this;
					
					Ext.applyIf(me, {
								alert : function(cfg, msg, fn, scope) {
									if (Ext.isString(cfg)) {
										cfg = {
											title : cfg,
											msg : msg,
											buttons : Ext.MessageBox.OK,
											fn : fn,
											scope : scope,
											minWidth : Ext.MessageBox.minWidth
										};
										return Ext.MessageBox.show(cfg);
									}
								},

								info : function(cfg, msg, fn, scope) {
									if (Ext.isString(cfg)) {
										cfg = {
											title : cfg,
											msg : msg,
											buttons : Ext.MessageBox.OK,
											fn : fn,
											scope : scope,
											minWidth : Ext.MessageBox.minWidth,
											icon : Ext.MessageBox.INFO
										};
										return Ext.MessageBox.show(cfg);
									}
								},

								question : function(cfg, msg, fn, scope) {
									if (Ext.isString(cfg)) {
										cfg = {
											title : cfg,
											msg : msg,
											buttons : Ext.MessageBox.YESNO,
											fn : fn,
											scope : scope,
											minWidth : Ext.MessageBox.minWidth,
											icon : Ext.MessageBox.QUESTION
										};
										return Ext.MessageBox.show(cfg);
									}
								},

								warn : function(cfg, msg, fn, scope) {
									if (Ext.isString(cfg)) {
										cfg = {
											title : cfg,
											msg : msg,
											buttons : Ext.MessageBox.OKCANCEL,
											fn : fn,
											scope : scope,
											minWidth : Ext.MessageBox.minWidth,
											icon : Ext.MessageBox.WARNING
										};
										return Ext.MessageBox.show(cfg);
									}
								},
									
								error : function(cfg, msg, fn, scope) {
									if (Ext.isString(cfg)) {
										cfg = {
											title : cfg,
											msg : msg,
											buttons : Ext.MessageBox.OK,
											fn : fn,
											scope : scope,
											minWidth : Ext.MessageBox.minWidth,
											icon : Ext.MessageBox.ERROR
										};
										return Ext.MessageBox.show(cfg);
									}
								}
							});

					me.callParent(arguments);
				}
			},function(){
				My.MsgBox = My.Msg = new this();
			});
})();
?

?

?

2、调用:

?

My.MsgBox.alert('alert', 'alert.');

My.MsgBox.info('info', 'info.');

My.MsgBox.question('question','question?');

My.MsgBox.warn('warn', 'warn!');

My.MsgBox.error('error', 'error!!');

?


?





?