Extjs4 如何使用Sencha designer在Ext Js中显示现有窗口

Extjs4 如何使用Sencha designer在Ext Js中显示现有窗口,extjs4,Extjs4,我是ExtJS的新手。我用Ext designer 1.2启动Ext js,现在我使用sencha designer 2.0,我在上面创建了面板和按钮,以及窗口。现在我想用点击事件来显示我的点击窗口,但我不知道怎么做,我在很多网站上搜索过,特别是在sencha.com上,但我找不到,我可以通过创建onclik函数来显示新窗口,但我想显示现有窗口,如果有人知道,请告诉我怎么做。我对secha designer中的控制器感兴趣 如何在没有控制器的情况下直接在onclickbutton函数中插入代码?

我是ExtJS的新手。我用Ext designer 1.2启动Ext js,现在我使用sencha designer 2.0,我在上面创建了面板和按钮,以及窗口。现在我想用点击事件来显示我的点击窗口,但我不知道怎么做,我在很多网站上搜索过,特别是在sencha.com上,但我找不到,我可以通过创建onclik函数来显示新窗口,但我想显示现有窗口,如果有人知道,请告诉我怎么做。我对secha designer中的控制器感兴趣

如何在没有控制器的情况下直接在onclickbutton函数中插入代码?

调用窗口的方法


如何找到窗口取决于您的应用程序,在您的情况下,您可能只需将对窗口的引用存储在变量中或按ID查找它。

以下是我为这个用例所做的工作:

   /**
     * 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;
    }

这正是问题所在,我不能通过Id调用它,我不知道调用它的适当顺序。我尝试了Ext.get('id');Ext.getCmp('id');Ext.ComponentManager.get('id');但我认为id不起作用,因为他们在不同的班级。