QListWidgetItemを別の行に移動するには? ドラッグ アンド ドロップ方式を使用できますか?
例: QListWiget 項目:
item1
item2
item3
item4
item3 をドラッグ アンド ドロップしました。後:
item3
item1
item2
item4
このリソースを見ました が、何もわかりません。
dropMimeData
必要なのが内部ドラッグアンドドロップだけであれば、必要ありません。これは、ウィジェットからドロップされるものに使用されます。アイテムビュー(およびそのウィジェットコンパニオン)には、内部ドラッグアンドドロップ移動が実装されています。InternalMove
に使用する必要がありますsetDragDropMove
。
簡単な例:
import sys
from PyQt4 import QtGui
app = QtGui.QApplication(sys.argv)
lw = QtGui.QListWidget()
lw.setDragDropMode(lw.InternalMove)
for i in range(10):
item = QtGui.QListWidgetItem('item %d' % i, lw)
lw.show()
sys.exit(app.exec_())