【问题标题】:pyqtgraph: how to drag or drop into plotItemspyqtgraph:如何拖放到 plotItems
【发布时间】:2013-10-23 04:36:19
【问题描述】:
  1. 我想将一个项目从 QListWidget 拖到 pyqtgraph.plotItem 中。我该怎么做。

  2. 当我单击 plotItem 时,我想知道单击了哪个项目。 我想我需要重新实现一些类的方法。然后是哪个班? 非常感谢。

【问题讨论】:

  • 对于#2,请打开第二个问题。

标签: python pyqtgraph


【解决方案1】:

你需要一些东西:

  1. 覆盖 pg.GraphicsView.dragEnterEvent() 以接受事件。
  2. 调用 pg.PlotItem.setAcceptDrops(True)
  3. 重写 pg.PlotItem.dropEvent() 来处理 drop

您可以通过创建子类或简单地在现有对象上重新分配方法来覆盖方法。示例:

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

【讨论】:

    猜你喜欢
    • 2019-03-13
    • 2014-04-22
    • 1970-01-01
    • 2016-10-13
    • 2012-05-03
    • 2014-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多