PyQt4 でドラッグ中にマウスポインター/カーソルを変更するにはどうすればよいですか (ウィジェットの左側にマウスポインターを 1 つ、右側に別のポインターを置きたい):
from PyQt4 import QtGui, QtCore
class Button(QtGui.QPushButton):
def mousePressEvent(self, event):
mimedata = QtCore.QMimeData()
self.drag = QtGui.QDrag(self)
self.drag.setMimeData(mimedata)
self.drag.start(QtCore.Qt.CopyAction)
class Example(QtGui.QWidget):
def __init__(self):
super(Example, self).__init__()
self.setAcceptDrops(True)
self.button = Button("Drag me", self)
self.setGeometry(300, 300, 300, 150)
def dragEnterEvent(self, e):
e.accept()
def dragMoveEvent(self, e):
pm = QtGui.QPixmap(32,32)
if e.pos().x()<150:
pm.fill(QtCore.Qt.blue)
self.button.drag.setDragCursor(pm,QtCore.Qt.CopyAction) #Not working
else:
pm.fill(QtCore.Qt.red)
self.button.drag.setDragCursor(pm,QtCore.Qt.MoveAction) #Not working
app = QtGui.QApplication([])
ex = Example()
ex.show()
app.exec_()
ただし、このコードはマウス カーソルを変更しません。
前もって感謝します マッツ