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

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

   系统:Windows 64位 IDEVS2017 Python:python3.6 pyqt:pyqt5.10.1
  
 
  • 1
  • 2
  • 3
  • 4

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

 def paintEvent(self, QPaintEvent): painter = QPainter(self) painter.setPen(QColor(166,66,250)) painter.begin(self) painter.draw-----#绘制函数 painter.end()   
  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

界面刷新为:

self.update()
  
 
  • 1

画笔设置:

painter.setPen(QColor(166,66,250))  
  
 
  • 1

画点:

painter.drawPoint(100,100)
  
 
  • 1

画线:

painter.drawLine(100,100,200,200)
  
 
  • 1

画圆:

painter.drawEllipse(150,150,100,100)
  
 
  • 1

画矩形:

painter.drawRect(100,100,100,150)
  
 
  • 1

画文本:

painter.drawText(120,120,"文字")
  
 
  • 1

画多边形:

 polygon = QPolygon() polygon.setPoints(5,100,100,140,130,160,160,170,140,140,178) painter.drawPolygon(polygon)
  
 
  • 1
  • 2
  • 3

画扇形:

painter.drawPie(100,100,200,200,0*16,120*16)
  
 
  • 1

画弧形:

painter.drawArc(100,100,200,200,30*16,120*16)
  
 
  • 1

画路径:

 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)
  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

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

文章来源: blog.csdn.net,作者:何其不顾四月天,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/u011218356/article/details/80950766

(完)