第六课 PyQt5绘制图形控件使用
tags:
- python
- 网易云课堂
categories:
- pyqt5
- QPainter
文章目录
第一节 PyQt5绘图API
- 文本
- 各种图形(直线,点,椭圆,弧,扇形,多边形等)
- 图像
# 绘制图像使用到类QPainter
# 实例化类
painter = QPainter()
# 初始化画板
painter.begin()
# 绘制文本、图形、图像(自己去找方法)
painter.drawText(...)
# 结束绘制
painter.end()
# 必须在paintEvent事件方法中绘制各种元素
# 窗口自动改变时paintEvent事件自动触发
第二节 PyQt5绘制文本
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QPainter, QColor, QFont
from PyQt5.QtCore import Qt
class DrawText(QWidget):
def __init__(self):
super(DrawText, self).__init__()
self.setWindowTitle('在窗口上绘制文本')
self.resize(500, 400)
self.text = "Python从菜鸟到高手"
def paintEvent(self, event):
painter = QPainter(self)
painter.begin(self)
# 设置画笔
print("当窗口尺寸变化时, 自动调用这个方法")
painter.setPen(QColor(150, 43, 5))
# 设置字体
painter.setFont(QFont('SimSun', 25))
painter.drawText(event.rect(), Qt.AlignCenter, self.text)
painter.end()
if __name__ == '__main__':
app = QApplication(sys.argv)
main = DrawText()
main.show()
sys.exit(app.exec_())
第三节 PyQt5绘制曲线
- 用像素点绘制正弦曲线 -2PI 2PI
- drawPoint(x,y)
import sys, math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import Qt
class DrawPoints(QWidget):
def __init__(self):
super(DrawPoints, self).__init__()