PyQt5基礎學習-QPainter(繪制不同樣式的直線) 1. QPen(設置顏色,設置大小, 設置樣式) 2.painter.drawLine(繪制直線的范圍) 3.pen.setStyle(Qt.DashLine)(虛線) 4.Qt.DashDotLine(虛線點) 5.Qt.DashDotLine(虛點點) 6.Qt.CustomDashLine(自定義點)


繪制實線,虛線,虛點線, 點線, 點點樣式和自定義樣式

"""
繪制不同類型的直線
"""
"""
用像素點繪制正弦曲線

-2PI  2PI
drawPoint(x, y)

"""
import sys, math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import Qt

class DrawMultiLine(QWidget):
    def __init__(self):
        super(DrawMultiLine, self).__init__()
        self.resize(300, 300)
        self.setWindowTitle('設置Pen的樣式')

    def paintEvent(self, event):
        painter = QPainter(self)
        painter.begin(self)

        #設置畫筆的顏色, 字體大小, 線的實心樣式
        pen = QPen(Qt.red, 3, Qt.SolidLine)
        #設置畫筆
        painter.setPen(pen)
        #繪制線
        painter.drawLine(20, 40, 250, 40)

        #設置畫筆的虛線樣式
        pen.setStyle(Qt.DashLine)
        painter.setPen(pen)
        painter.drawLine(20, 80, 250, 80)

        #設置畫筆的虛線和點樣式
        pen.setStyle(Qt.DashDotLine)
        painter.setPen(pen)
        painter.drawLine(20, 120, 250, 120)

        #設置畫筆的點線樣式
        pen.setStyle(Qt.DotLine)
        painter.setPen(pen)
        painter.drawLine(20, 160, 250, 160)

        #設置虛線的點點樣式
        pen.setStyle(Qt.DashDotDotLine)
        painter.setPen(pen)
        painter.drawLine(20, 200, 250, 200)

        #設置自定義線
        pen.setStyle(Qt.CustomDashLine)
        pen.setDashPattern([1, 10, 5, 4])
        painter.setPen(pen)
        painter.drawLine(20, 240, 250, 240)

        painter.end()


if __name__ == "__main__":
    app = QApplication(sys.argv)

    main = DrawMultiLine()
    main.show()

    sys.exit(app.exec_())

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM