extjs treepanel раскрыть событие свертывания

У меня есть панель дерева с узлами внутри панели дерева. Чтобы определить, расширена или свернута панель дерева, а не узлы, я использую следующий код:

Ext.getCmp('общий').collapsed

Возвращаемое значение либо истинно, либо ложно. Есть ли событие в панели дерева, которое я могу зафиксировать, когда панель дерева развернута или свернута? Я имею в виду панель дерева, а не узлы в панели.

Ваша помощь приветствуется.

Спасибо.


person Eugene Anthony    schedule 20.02.2013    source источник


Ответы (3)


Вы должны сделать что-то не так, следующий код работает, см. этот JSFiddle

Ext.create('Ext.tree.Panel', {
    collapsible: true,
    title: 'Simple Tree',
    width: 200,
    height: 150,
    store: store,
    rootVisible: false,
    renderTo: Ext.getBody(),
    listeners: {
        collapse: function() {
            alert('collapsed');
        },
        expand: function() {
            alert('expand')
        }
    }
});
person sra    schedule 20.02.2013
comment
Я попытался добавить событие свертывания и расширения в свой прослушиватель, и он все еще не работает. - person Eugene Anthony; 20.02.2013
comment
Тогда вам нужно будет поделиться еще немного кода, потому что это работает для меня и должно работать для вас. Где и как вы объявляете слушателей? - person Johan Haest; 20.02.2013
comment
id: 'accountTreePnl', имя: 'accountTreePnl', высота: 250, xtype: treepanel, rootVisible: false, border: false, animate: false, autoScroll: true, containerScroll: true, root: new Ext.tree.AsyncTreeNode({ текст: 'Учетная запись(и)' }), загрузчик: новый Ext.tree.TreeLoader({ dataUrl: '' }), dropConfig : { appendOnly : true }, слушатели: { свернуть: function() { }, развернуть: function () { } } - person Eugene Anthony; 20.02.2013
comment
@EugeneAnthony, основываясь на этом примере, ваше дерево вообще не складывается. Итак, я предполагаю, что вы сворачиваете контейнер, в который вложили дерево? - person sra; 20.02.2013
comment
Панель дерева находится внутри панели, использующей макет подгонки. - person Eugene Anthony; 20.02.2013
comment
@EugeneAnthony Снова; исходя из этого примера, ваше дерево вообще не сворачивается! Похоже, вы сворачиваете панель с подходящим макетом. В этом случае теперь событие на панели дерева запускается - person sra; 20.02.2013
comment
Сделанный. Возможно, этот вопрос может вас заинтересовать. stackoverflow.com/questions/14993104 / - person Eugene Anthony; 22.02.2013

«Развернуть» и «свернуть» у меня тоже не работает. Вместо этого у меня работают «itemcollapse», «itemexpand», «itemmove» и их аналоги. Я с Ext-JS 4.2.1.

person fraber    schedule 27.02.2014
comment
Вы использовали неправильное событие. Вам нужно использовать событие afteritemexpand. afteritemexpand: function ( node, index, item, eOpts ){ alert('Dharmesh'); } Вот скрипт: jsfiddle.net/johanhaest/RDC9W/1 - person Dharmesh Hadiyal; 25.05.2016

Вы использовали неправильное событие. Вам нужно использовать событие afteritemexpand.

afteritemexpand: function ( node, index, item, eOpts ){
    alert('HAHA');
}

Вот скрипка:

http://jsfiddle.net/johanhaest/RDC9W/1/

person Dharmesh Hadiyal    schedule 25.05.2016