ExtJS маскирует TreePanel без панели инструментов - PullRequest
0 голосов
/ 18 апреля 2011

Я пытаюсь замаскировать панель дерева без панели инструментов, чтобы пользователь мог продолжать печатать, когда панель замаскирована. Это кажется сложнее, чем я думал, поэтому некоторые предложения будут великолепны!

Хотя его проблема не нужна, вот моя (урезанная) панель базового дерева:

Ext.tree.TreePanel({
    id:'quicksearch_panel',
    root:{
        nodeType:'async',   
        preloadChildren:false       
    },
    loader: new Ext.tree.TreeLoader({
        dataUrl:'...',        
        baseParams:{}       
    }),
    tbar:['Quicksearch:', {     
        xtype:'textfield',
        id:'quicksearch_combo',
        emptyText: 'search...',
        listeners:{
            keyup:{buffer:400, fn:function(field, e) {

                     // Mask Panel and not Combo HERE
                }}     
        }
    }]
});

1 Ответ

1 голос
/ 18 апреля 2011

Я думаю, вы можете попытаться замаскировать body TreePanel?Элемент body является элементом во всех компонентах, который наследует Panel, и на панели инструментов фактически отсутствует этот элемент body, так что вы, вероятно, можете просто замаскировать body, ваша панель инструментов будет вне маскирующего наложения.

Попробуйте это:

var tree = Ext.tree.TreePanel({
    //......
    tbar: ['Quicksearch:', {
        xtype:'textfield',
        emptyText: 'search...',
        enableKeyEvents: true, //you need this for key events
        listeners:{
            keyup:{
                buffer:400,
                fn:function(field, e) {
                     tree.body.mask();

                     //When the searching done, unmask it
                     //tree.body.unmask();
                }
            }
        }
    }]
});

Обновите нас, если это работает:)

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