我正在制作一个应用程序,我想通过使用行连接QGraphicsScene中的某些项目。我希望这是实时完成的,所以当我按住鼠标并尝试绘制线条时,我想看到正在绘制的线条。我已经写了一些代码来允许这个,但是这个代码的问题在于它一直在清除所有东西,我不知道解决这个问题。任何帮助将不胜感激。
class graphicsScene(QtGui.QGraphicsScene, QtGui.QWidget):
self.pen = QtGui.QPen(QtCore.Qt.black, 3, QtCore.Qt.SolidLine)
def mousePressEvent(self, event):
if connectLine_cs == 1:
self.cursorStartPosition = event.scenePos()
self.start = QtCore.QPoint(self.cursorStartPosition.x(),self.cursorStartPosition.y())
def mouseMoveEvent(self, event):
if connectLine_cs == 1:
self.cursorCurrentPosition = event.scenePos()
current = QtCore.QPointF(self.cursorCurrentPosition.x(),self.cursorCurrentPosition.y())
self.clear()
link = QtGui.QGraphicsLineItem(QtCore.QLineF(self.start, current))
link.setPen(self.pen)
self.addItem(link)