Показать сообщение отдельно
  #2 (permalink)  
Старый 08.11.2013, 08:48
Новичок на форуме
Отправить личное сообщение для ka-5 Посмотреть профиль Найти все сообщения от ka-5
 
Регистрация: 31.10.2013
Сообщений: 5

Сообщение от Shamandrey Посмотреть сообщение
...
	// Создание дерева слоев
	tree = new Ext.tree.TreePanel({
		renderTo: "tree",
		root: new GeoExt.tree.LayerContainer({
			text: 'Map Layers',
			layerStore: panel.layers,
			leaf: false,
			expanded: true
		}),
...
                    if(selectedNode)
                    {
                        //Сдесь происходит удаление выбранного узла в дереве слоев
                        selectedNode.remove(true);
                        // !!!Сдесь ДОЛЖНО происходить удаление слоя карты спорядковым номером выбранного узла в дереве
                        //  слоев. Но пока что он удаляет слой с номером 0!!!
                        panel.map.layers[0].destroy();
                    }

Чисто теоретический совет: попробуй в консоль вывести содержимое selectedNode. Предполагаю, что т.к. дерево создаётся путём отображения из panel.layers, то в selectedNode.raw должна быть ссылка на объект твоего слоя, который нужно удалить, соответственно для него и нужно будет вызвать destroy(), а уж потом и для самого узла selectedNode.remove(true)
Ответить с цитированием