Python 用PyQt在图像上画线

Python 用PyQt在图像上画线,python,drawing,pyqt4,mouseevent,Python,Drawing,Pyqt4,Mouseevent,我想制作一个python脚本,在其中显示一个图像,然后最终用户可以通过单击两点在该图像上绘制一个箭头 我希望这条线是一个箭头,并显示在鼠标指针之后,直到用户第二次单击为止 使用Python3、PyQt4和Ubuntu 提前感谢使用paintEvent和QPainter: import sys from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import * class Example(QWidg

我想制作一个python脚本,在其中显示一个图像,然后最终用户可以通过单击两点在该图像上绘制一个箭头

我希望这条线是一个箭头,并显示在鼠标指针之后,直到用户第二次单击为止

使用Python3、PyQt4和Ubuntu


提前感谢

使用paintEvent和QPainter:

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *

class Example(QWidget):
    def __init__(self):
        super().__init__()
        self.setGeometry(30, 30, 500, 300)

    def paintEvent(self, event):
        painter = QPainter(self)
        pixmap = QPixmap("myPic.png")
        painter.drawPixmap(self.rect(), pixmap)
        pen = QPen(Qt.red, 3)
        painter.setPen(pen)
        painter.drawLine(10, 10, self.rect().width() -10 , 10)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    ex.show()
    sys.exit(app.exec_())

谢谢这对我来说很管用,我需要在图像上修改鼠标坐标。最后一件事。。。我如何在一端画一条箭头形状的线??因为我的目标是画箭头:)我建议在线的末端画一个三角形@f126ckThank!!!好的,明白了。。但只有一件事。我正在写一个更大的程序,提示用户画出他们自己的直线/箭头。用户单击起点,然后单击“矢量”线的终点。我想在用户绘图的同时提供一种机制,让他们对程序的实际工作进行反馈。我想到了在鼠标指针坐标下数不清地画一条线,当他们第二次点击时,在图像上永久地画一条线。(要了解我想要实现的目标,请在画线的同时思考MS Paint…)谢谢@Velcro的帮助。我很感激。你是我的朋友。基本上,我希望用户单击图像中的点坐标,然后以编程方式开始绘制一条连接第一个单击点和鼠标指针的线,以便程序以交互方式显示该线的路径。在最后,并且只有在最后,当用户第二次单击一个点时,我想在图像上显示并永久绘制这条线(连接这两个点)。再次感谢。