私はこれについて多くの投稿を読みましたが、それでもsettimeoutは機能しません。これはコードの「this」が原因であり、おそらくローカル/グローバル変数のスコープが原因であると思われます。ext.windowの3秒後に閉じるようにsettimeoutを正しく設定するにはどうすればよいですか?
action = new Ext.Action({
handler: function(){
if (this.pressed){
if (!this.panelWin){
this.panelWin = new Ext.Window({
border: false,
resizable: false,
draggable: false,
closable: false,
layout: 'fit',
autoWidth: true,
autoHeight: true,
items: [newPanel],
listeners:{
show: function() {
setTimeout("this.panelWin.destroy()", 3000);
}
}
});
}
this.panelWin.show();
}
else
{
this.panelWin.hide();
}
}
});