Почему doLayout не работает при втором нажатии? - PullRequest
0 голосов
/ 28 октября 2010

Я использую функцию doLayout для окна.

    var win = new Ext.Window({
    id: 'site-action-window',
    closeAction: 'hide',
    resizable: false,
    layout: 'fit'
});

    function showWin(f) {
    win.removeAll();
    win.add(f);
    win.setSize(400, 150);
    win.setTitle(localize.addLanguage);
    win.show();
    win.doLayout();
}

, когда я вызываю эту функцию в первый раз, все работает нормально.но как только я сделаю второй вызов, я получаю сообщение об ошибке «b.getPositionEl (). dom is undefined» из-за ошибки в работе Fire.кто-нибудь может объяснить?

спасибо

Ответы [ 3 ]

0 голосов
/ 24 ноября 2010

Попробуйте добавить closeAction: 'hide' при определении окна

    var win = new Ext.Window({
    id: 'site-action-window',
    closeAction: 'hide',
    resizable: false,
    closeAction: 'hide',
    layout: 'fit'});

Когда пользователь закрывает окно, окно автоматически уничтожается - поэтому не может быть вызвано снова.Использование closeAction: «hide» изменит поведение кнопки закрытия с «close» на «hide».

Источники: http://dev.sencha.com/deploy/dev/docs/?class=Ext.Window

0 голосов
/ 20 декабря 2010

Нашел проблему,

Я уничтожал объект, а затем пытался вызвать его снова вне совка

Спасибо за ответы

0 голосов
/ 28 октября 2010

Поскольку вы уже используете Firebug, посмотрите на трассировку стека. Что б? Вам нужно немного отладить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...