Вам не нужно вызывать destroy (), так как после закрытия окна оно автоматически уничтожается.
См. API Ext.Window .
И не вызывайте close () в вашем обработчике beforeclose, поскольку он уже собирается закрываться.
Я думаю, что вы можете использовать 'new' всякий раз, когда вы хотите создать окно и закрыть его, либо щелкнуть инструмент закрытия заголовка (вверху справа), либо вызвать его метод close (). Не беспокойся об уничтожении. Ext сделает это.
Основное различие между close () и destroy () заключается в том, что close 'fires' закрывает события и решает, закрывать ли окно или скрывать его, основываясь на параметре конфигурации closeAction. Если он решит закрыть, будет вызван destroy ().
EDIT:
попробуйте следующее
function onWindowClose(t){
var token = t.id.split('_')[0];
var taskBarItemId = token + '_taskbar';
Ext.getCmp(taskBarItemId).destroy(); //Destroying the button
//t.destroy(); //Remove this statement.
return true;
}
РЕДАКТИРОВАТЬ 2: Удалить свернуть слушателя
listeners: {
'beforeclose': onWindowClose//,
//'minimize': function(){ this.hide(); }
}