起初对Ext.MessageBox.updateProgress的误用,导致看到很不乐观的效果,想想自己实在愚蠢啊。。。。。
起先:
var fun = function (p) {
return function () {
if (p == 20) {
Ext.MessageBox.hide();
} else {
Ext.MessageBox.progress("请等待", "数据处理进度...");
Ext.MessageBox.updateProgress(p / 20, '正在处理第' + p + '个,一共20个');
}
};
}
for (var i = 1; i <= 20; i++) {
setTimeout(fun(i), i * 1000);
}
这将导致进度框一直闪(重新创建),
后来改成:
Ext.MessageBox.progress("请等待", "数据处理进度...");
var fun = function (p) {
return function () {
if (p == 20) {
Ext.MessageBox.hide();
} else {
Ext.MessageBox.updateProgress(p / 20, '正在处理第' + p + '个,一共20个');
}
};
}
for (var i = 1; i <= 20; i++) {
setTimeout(fun(i), i * 1000);
}
这样就正常了。