У меня проблема с использованием ExtJS4.
В моем приложении есть дерево, содержащее строку, представляющую сотрудника.
Внутри этого дерева перетаскивание работает просто отлично.
Сейчас я пытаюсь создать панель, на которую можно перетащить сотрудника для удаления.
Итак, я позволил ExtJS создать новый Ext.dd.DDTarget, определить зону перетаскивания по мере необходимости (и это та часть, которая работает, потому что она распознается как действительная цель для увольнения) ... но когда я увольняю сотрудника, Ничего не произошло. Я просто не могу понять, какой слушатель использовать и где именно его использовать ...
И я действительно не знаю, какую часть моего кода я должен опубликовать с этим вопросом, чтобы поддержать вас в поддержке меня (: D) ... так что я просто публикую то, что я думаю, я должен опубликовать и отредактировать это сообщение, если чего-то не хватает ...: -)
Итак, вот моя цель DDT:
var trashDDTarget = Ext.create('Ext.dd.DDTarget', 'trashTarget', 'trashDrag');
где 'trashTarget' - панель (как показано ниже), а 'trashDrag' - имя dragGroup ...
Целевая панель:
var trashPanel = Ext.create('Ext.panel.Panel', {
title: 'Trash!',
id: 'trashTarget',
width: 400,
height: 150,
renderTo: 'trash',
bodyStyle: 'background-image: url(/images/trash_can.png) !important'
});
И это одна из моих идей для решения этой проблемы:
Ext.override(Ext.dd.DDTarget, {
onDragDrop : function(evtObj, targetElId) {
console.log(evtObj);
},
onInvalidDrop: function(evt) {
console.log(evt);
}
});
Переопределение некоторых слушателей; но это не работает.
Надеюсь, я вас не смутил, и, может быть, кто-то может мне помочь ...: -)
Заранее спасибо
gilaras
----------------------------
UPDATE:
Я изменил панель на сетку ...
Когда я перетаскиваю на него какой-либо предмет, он исчезает с дерева ...
... но, похоже, не запускается ни одно событие, указанное в документации ...
Моя новая панель выглядит так:
var trashPanel = Ext.create('Ext.grid.Panel', {
title: 'Trash!',
id: 'trashTarget',
width: 400,
viewConfig: {
plugins: {
ptype: 'gridviewdragdrop',
dropGroup: 'trashDrag',
dragGroup: 'trashDrag',
dragText: 'In den Papierkorb ziehen, um zu löschen...'
}
},
height: 150,
renderTo: 'trash',
columns:[
{
hidden: true
}
],
bodyStyle: 'background-image: url(/images/trash_can.png) !important'
});
Но почему-то это тоже не работает ...