Как получить индексы перетаскивания в PyQt5 - PullRequest
1 голос
/ 26 марта 2020

Как мне получить индекс, откуда был перетащен item, и индекс, куда он был отброшен? Я могу получить from index, используя currentRow() в dropEvent(), но IDK, как получить drop index.

class ListWidget(QListWidget):
    ...
    def dropEvent(self, event):
        fromIndex = self.currentRow()
        QListWidget.dropEvent(self, event)

1 Ответ

1 голос
/ 26 марта 2020

Событие (QDropEvent) возвращает позицию, где была отпущена мышь, и с этой информацией получается строка:

class ListWidget(QListWidget):
    def dropEvent(self, event):
        fromIndex = self.currentRow()
        toIndex = self.count()
        ix = self.indexAt(event.pos())
        if ix.isValid():
            toIndex = ix.row()
        print("from {} to {}".format(fromIndex, toIndex))
        QListWidget.dropEvent(self, event)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...