Панель ExtJS всегда впереди/всегда сверху

Описание сценария: у меня есть макет границы с контейнером ExtJS, содержащим окна «один ко многим» и панель (действующая как панель задач). Я хочу, чтобы панель задач всегда была сверху. Если окно активно и, следовательно, находится впереди, вызов toFront не ставит его впереди, как ожидалось.

ExtJS Windows, которые остаются в front находится в пределах center области Компоновка границы, тогда как панель, действующая как панель задач, находится в области south следующим образом:

items: [
        { 
            xtype: 'maincontainer', id:'maincontainer',
            region : 'center'
        },
        {
            xtype: 'launchpanel', id:'launchpanel', 
            region: 'south',
            collapsible : true,
        }        
],

где maincontainer и launchpanel расширяют Ext.container.Container и Ext.panel.Panel соответственно. Этот код находится в основном контейнере, который является единственным элементом в файле Viewport приложения ExtJS MVC.

Как сделать так, чтобы launchpanel всегда был впереди/сверху?


person Joseph Victor Zammit    schedule 16.07.2012    source источник


Ответы (1)


Из того, что я прочитал за это время, то, что отображается впереди, определяется CSS z-index.

Затем я нашел этот ответ о том, как установить z- индекс панели. Поэтому я устанавливаю z-индекс для панели каждый раз, когда она отображается, имея в контроллере следующий фрагмент кода:

'launchpanel': {
    expand: function(panel) { 
        panel.getEl().setStyle('z-index','80000');
    },
...

Тем не менее, если у кого-то есть лучший способ сделать вышеперечисленное, пожалуйста, поделитесь!

person Joseph Victor Zammit    schedule 16.07.2012