Python Qt QListWidget项目拖放

时间:2012-10-13 22:18:53

标签: python qt qt4 pyqt pyqt4

如何将QListWidgetItem移动到另一行?我可以使用拖放方法吗?
例:     QListWiget项目:

item1
item2
item3
item4

第3项拖放。后:

item3
item1
item2
item4

我看了resource,但我什么都不懂。

1 个答案:

答案 0 :(得分:2)

如果您需要的只是内部拖放,则不需要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_())