Найти - Пользователи
Полная версия: Запретить удаление элемента при drag'n'drop
Начало » GUI » Запретить удаление элемента при drag'n'drop
1
_alexs_
Имеется QTreeView, из которого элементы могут перетаскиваться в другой виджет (тоже QTreeView). Необходимо, чтобы при перетаскивании, элемент не удалялся из родительского виджета, а оставался там же.

Для этого попробовал добавить event.ignore() в конец обработчика dropEvent(). С такой модификацией получил желаемое поведение в Linux и Mac OS, а вот в Windows, к сожалению, элемент все так же удаляется после перетаскивания.
Есть идеи с чем это может быть связано и как можно запретить/предотвратить удаление элемента?

На крайний случай у меня есть «костыль» — проверять платформу и, если это Windows, создавать элемент заново, но может, можно сделать как-то изящнее?
_alexs_
Попробовал ещё переопределить действие при drag'n'drop через setDropAction(Qt.CopyAction), но без результата. Событие всегда возвращает Qt.MoveAction
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB