2012-02-27 1 views
0

Я новичок в Ext js. Я начал Ext js с помощью ext designer 1.2, теперь я использую sencha designer 2.0, я создал панель и кнопку на ней и окно. Теперь я хочу использовать событие click для отображения моего окна при щелчке, но я не знаю, как, я искал на многих сайтах и ​​особенно на sencha.com, но я не мог найти, я могу показать новое окно, создав его onclik-функцию, но я хочу показать существующий, если кто знает, можете ли вы рассказать мне, как это сделать. Меня интересуют контроллеры в дизайнере secha.Как показать существующее окно в Ext Js с использованием дизайнера Sencha

Как это сделать без контроллеров при прямом вводе кода в функцию onclickbutton?

ответ

0

Вот что я сделал для этого случая использования:

/** 
    * Check to see if window already open with the specified ID. 
    * If window exists, bring it to front and expand if collapsed. 
    * @param id 
    */ 
    windowAlreadyOpen: function(id){ 
     //Check for already opened window with the same ID 
     var windowOpen = Ext.ComponentQuery.query('window[id='+id+']'); //always returns array 
     if (windowOpen && windowOpen[0]){ 
       try { 
        windowOpen[0].toFront();   //bring to front 
        if (windowOpen[0].collapsed){ 
         windowOpen[0].toggleCollapse(); //expand window if collapsed 
        } 
       } catch (e) { 
        console.error(e); 
       } 
       return windowOpen[0]; 
     } 
     return false; 
    } 
0

Вызвать toFront() метод окна.

Как вы можете найти окно зависит от вашего приложения, в вашем случае вы, вероятно, просто сохраните ссылку на окно в переменной или найдите его по ID.

+0

Это именно проблема, я не могу назвать его Id, я не знаю, соответствующий приказ назвать его. Я попробовал Ext.get ('id'); Ext.getCmp ('ID'); Ext.ComponentManager.get ('ID'); но id не работает, я думаю, потому что они находятся в другом классе. –

Смежные вопросы