PyQt5最全27 绘图之drawLine绘制不同类型的直线

PyQt5最全27 绘图之drawLine绘制不同类型的直线

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


class DrawMultiLine(QWidget):
    """
    drawLine绘制不同类型的直线
    QPainter
    painter = QPainter()
    painter.begin()
    painter.drawText(...)
    painter.end()
    必须在事件方法中绘制各种元素
    """
    def __init__(self):
        super(DrawMultiLine, self).__init__()
        self.setWindowTitle('设置Pen的样式'
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyQt5中的QPainter提供了丰富的绘图功能,可以用于绘制各种图形,包括直线、矩形、圆形、椭圆、多边形、贝塞尔曲线等。下面分别介绍这些图形的绘制方法。 ### 直线 绘制直线可以使用QPainter的drawLine()方法。该方法需要指定直线的起点和终点坐标。 ```python from PyQt5.QtGui import QPainter, QPen from PyQt5.QtCore import Qt pen = QPen(Qt.black) # 创建笔对象 pen.setWidth(2) # 设置笔宽度 painter = QPainter() # 创建家对象 painter.begin(self) # 开始绘 painter.setPen(pen) # 设置笔 painter.drawLine(0, 0, 100, 100) # 绘制直线 painter.end() # 结束绘 ``` ### 矩形 绘制矩形可以使用QPainter的drawRect()方法。该方法需要指定矩形左上角坐标和矩形的宽度和高度。 ```python painter.drawRect(50, 50, 100, 100) # 绘制矩形 ``` ### 圆形 绘制圆形可以使用QPainter的drawEllipse()方法。该方法需要指定圆形的外接矩形。 ```python painter.drawEllipse(50, 50, 100, 100) # 绘制圆形 ``` ### 椭圆 绘制椭圆可以使用QPainter的drawEllipse()方法。该方法需要指定椭圆的外接矩形。 ```python painter.drawEllipse(50, 50, 100, 50) # 绘制椭圆 ``` ### 多边形 绘制多边形可以使用QPainter的drawPolygon()方法。该方法需要指定多边形的各个顶点坐标。 ```python points = [QPoint(50, 50), QPoint(100, 50), QPoint(100, 100), QPoint(50, 100)] painter.drawPolygon(points) # 绘制多边形 ``` ### 贝塞尔曲线 绘制贝塞尔曲线可以使用QPainter的drawBezierCurve()方法。该方法需要指定曲线的起点、控制点和终点坐标。 ```python painter.drawBezierCurve(50, 50, 75, 100, 125, 100, 150, 50) # 绘制贝塞尔曲线 ``` 以上是QPainter绘制各种图形的方法,你可以根据需要进行选择和组合。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值