我是靠谱客的博主 纯情哑铃,最近开发中收集的这篇文章主要介绍PyQt5之QPen画笔类学习QPen,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

QPen

QPen是一个基本的图形对象。它用于绘制矩形,椭圆,多边形或其他形状的线条,曲线和轮廓。
例子如下:

from PyQt5.Qt import QWidget, QApplication
from PyQt5.QtGui import QPainter, QPen
from PyQt5.QtCore import Qt
import sys

class Example(QWidget):    
    def __init__(self):
        super().__init__()
        self.initUI()
        
    def initUI(self):      
        self.setGeometry(300, 300, 280, 270)
        self.setWindowTitle('Pen styles')
        self.show()
        
    def paintEvent(self, e):
        qp = QPainter()
        qp.begin(self)
        self.drawLines(qp)
        qp.end()
     #画线事件函数 
    def drawLines(self, qp):
    	#调用构造函数初始化
        pen = QPen(Qt.black, 2, Qt.SolidLine)
        qp.setPen(pen)
        qp.drawLine(20, 40, 250, 40)
		#画虚线
        pen.setStyle(Qt.DashLine)
        qp.setPen(pen)
        qp.drawLine(20, 80, 250, 80)
        #画虚点画线
        pen.setStyle(Qt.DashDotLine)
        qp.setPen(pen)
        qp.drawLine(20, 120, 250, 120)
        #画点线
        pen.setStyle(Qt.DotLine)
        qp.setPen(pen)
        qp.drawLine(20, 160, 250, 160)
        #画虚点点划线
        pen.setStyle(Qt.DashDotDotLine)
        qp.setPen(pen)
        qp.drawLine(20, 200, 250, 200)
        #画经典的虚线
        pen.setStyle(Qt.CustomDashLine)
        pen.setDashPattern([1, 4, 5, 4])
        qp.setPen(pen)
        qp.drawLine(20, 240, 250, 240)
#主函数
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

程序运行结果如下图:
from PyQt5.Qt import QWidget, QApplication
from PyQt5.QtGui import QPainter, QPen
from PyQt5.QtCore import Qt
import sys

class Example(QWidget):
def init(self):
super().init()
self.initUI()

def initUI(self):      
    self.setGeometry(300, 300, 280, 270)
    self.setWindowTitle('Pen styles')
    self.show()
    

def paintEvent(self, e):
    qp = QPainter()
    qp.begin(self)
    self.drawLines(qp)
    qp.end()
    
    
def drawLines(self, qp):
    pen = QPen(Qt.black, 2, Qt.SolidLine)

    qp.setPen(pen)
    qp.drawLine(20, 40, 250, 40)

    pen.setStyle(Qt.DashLine)
    qp.setPen(pen)
    qp.drawLine(20, 80, 250, 80)

    pen.setStyle(Qt.DashDotLine)
    qp.setPen(pen)
    qp.drawLine(20, 120, 250, 120)

    pen.setStyle(Qt.DotLine)
    qp.setPen(pen)
    qp.drawLine(20, 160, 250, 160)

    pen.setStyle(Qt.DashDotDotLine)
    qp.setPen(pen)
    qp.drawLine(20, 200, 250, 200)

    pen.setStyle(Qt.CustomDashLine)
    pen.setDashPattern([1, 4, 5, 4])
    qp.setPen(pen)
    qp.drawLine(20, 240, 250, 240)

if name == ‘main’:

app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
```

程序运行结果如下图:
在这里插入图片描述

最后

以上就是纯情哑铃为你收集整理的PyQt5之QPen画笔类学习QPen的全部内容,希望文章能够帮你解决PyQt5之QPen画笔类学习QPen所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部