【发布时间】:2013-10-23 04:36:19
【问题描述】:
我想将一个项目从 QListWidget 拖到 pyqtgraph.plotItem 中。我该怎么做。
当我单击 plotItem 时,我想知道单击了哪个项目。 我想我需要重新实现一些类的方法。然后是哪个班? 非常感谢。
【问题讨论】:
-
对于#2,请打开第二个问题。
我想将一个项目从 QListWidget 拖到 pyqtgraph.plotItem 中。我该怎么做。
当我单击 plotItem 时,我想知道单击了哪个项目。 我想我需要重新实现一些类的方法。然后是哪个班? 非常感谢。
【问题讨论】:
你需要一些东西:
您可以通过创建子类或简单地在现有对象上重新分配方法来覆盖方法。示例:
import pyqtgraph as pg
app = pg.QtGui.QApplication([])
l = pg.QtGui.QListWidget()
l.addItem('Drag me')
l.setDragDropMode(l.DragOnly)
l.show()
win = pg.GraphicsWindow()
win.show()
def dragEnterEvent(ev):
ev.accept()
win.dragEnterEvent = dragEnterEvent
plot = pg.PlotItem()
plot.setAcceptDrops(True)
win.addItem(plot)
def dropEvent(event):
print "Got drop!"
plot.dropEvent = dropEvent
【讨论】: