前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Pyqt5:Qpainter绘制基础图形(一)

Pyqt5:Qpainter绘制基础图形(一)

作者头像
何其不顾四月天
发布2023-03-10 13:41:25
1K0
发布2023-03-10 13:41:25
举报
文章被收录于专栏:四月天的专栏四月天的专栏

入手pyqt没有几天,想把pyqt系类基础挨个实践一遍。 这一节是pyqt5的QPainter绘制基础图形。 开发环境:

代码语言:javascript
复制
   系统:Windows 64位
   IDE:VS2017
   Python:python3.6
   pyqt:pyqt5.10.1

一些注意事项: QPainter基础流程为:

代码语言:javascript
复制
    def paintEvent(self, QPaintEvent):
            painter = QPainter(self)
            painter.setPen(QColor(166,66,250))          
            painter.begin(self)
            painter.draw-----#绘制函数
            painter.end()   

界面刷新为:

代码语言:javascript
复制
self.update()

画笔设置:

代码语言:javascript
复制
painter.setPen(QColor(166,66,250))  

画点:

代码语言:javascript
复制
painter.drawPoint(100,100)

画线:

代码语言:javascript
复制
painter.drawLine(100,100,200,200)

画圆:

代码语言:javascript
复制
painter.drawEllipse(150,150,100,100)

画矩形:

代码语言:javascript
复制
painter.drawRect(100,100,100,150)

画文本:

代码语言:javascript
复制
painter.drawText(120,120,"文字")

画多边形:

代码语言:javascript
复制
                polygon = QPolygon()
                polygon.setPoints(5,100,100,140,130,160,160,170,140,140,178)
                painter.drawPolygon(polygon)

画扇形:

代码语言:javascript
复制
painter.drawPie(100,100,200,200,0*16,120*16)

画弧形:

代码语言:javascript
复制
painter.drawArc(100,100,200,200,30*16,120*16)

画路径:

代码语言:javascript
复制
                path = QPainterPath()
                path.addRect(100,100,100,100)
                path.addEllipse(150,150,60,80)
                painter.setBrush(Qt.blue)
                #path.setFillRule(Qt.WindingFill) #非零填充规则
                path.setFillRule(Qt.OddEvenFill) #奇偶填充规则
                painter.drawPath(path)

下边是UI界面:

UI界面
UI界面

项目思路为: 点击对应按钮绘制特定图形。 下边为源码: 文件源码

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-07-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档