繪制實線,虛線,虛點線, 點線, 點點樣式和自定義樣式
""" 繪制不同類型的直線 """ """ 用像素點繪制正弦曲線 -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_())