【发布时间】:2012-08-31 17:07:05
【问题描述】:
我真的很难找到一种方法来做到这一点。假设我在小部件窗口中非常简单地实现了一个按钮:
self.button = QPushButton("Drag Me", self)
我可以使用self.button.move(x,y) 在父窗口小部件区域周围移动它的初始化点,我可以通过e.x() 和e.y() 从mousePressEvent(self, e) 获取鼠标事件,这样按钮就会移动到我点击的任何位置,但是我只是似乎无法将所有这些放在一个拖放框架中。
澄清:在阅读了拖放的“真正”含义之后,这不是我所需要的。我只是希望能够用鼠标移动小部件,这与在冰箱上移动磁铁的方式非常相似。
【问题讨论】:
-
@Eric 在他的回答中提出了一个很好的观点。您能否澄清这个问题,您是否想要真正的拖放事件......或者只是能够用鼠标移动按钮
-
根据您的意图 - 我会研究 QGraphicsView 框架。您正在尝试做的事情(虚拟磁铁板)很容易通过它来完成。