QTreeWidget の実装はまったく同じではないと思いますが、外部ファイル、特に画像や動画ファイルを QTreeWidget にドロップできるようにしたいと考えています。私はそれを特定の QTreeWidgetItem にドラッグしようとしているのではなく、ツリー全体にドラッグしようとしています。これが私のコードです:
class moTree(QTreeWidget):
def __init__(self, parent):
super(moTree, self).__init__(parent)
self.setMouseTracking(True)
self.setAcceptDrops(True)
def dragEnterEvent(self, event):
if event.mimeData().hasUrls:
event.accept()
else:
event.ignore()
def dropEvent(self, event):
if event.mimeData().hasUrls:
for url in event.mimeData().urls():
#Handle stuff here
else:
event.ignore()
dragEnterEvent が呼び出されていますが、dropEvent は呼び出されておらず、「ブロックされた」アイコンが表示されています。理由はありますか?