资源简介
本资源为QPainter绘制基础图形(二),利用鼠标拖动绘制。

代码片段和文件信息
import os
import time
import sys
FileName = os.path.basename(sys.argv[0])
FilePath = sys.argv[0].replace(FileName““)
UiName = FileName.replace(“.py““.ui“)
UiPath = FilePath +UiName
Ui_pyName = FilePath+“ui.py“
FileFlag = os.path.isfile(Ui_pyName)
if FileFlag == 0:
sys_cmd = os.popen(“pyuic5 “+UiPath+“ -o “+Ui_pyName)
time.sleep(1)
from ui import Ui_Form
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
class m_window(QWidgetUi_FormQPainter):
def __init__(self):
super(m_windowself).__init__()
self.setupUi(self)
self.pushButton.clicked.connect(self.DrawPoint)
self.pushButton_2.clicked.connect(self.DrawLine)
self.pushButton_3.clicked.connect(self.DrawElipse)
self.pushButton_4.clicked.connect(self.DrawRectangle)
self.pushButton_5.clicked.connect(self.DrawText)
self.pushButton_6.clicked.connect(self.DrawPolygon)
self.pushButton_7.clicked.connect(self.DrawPie)
self.pushButton_8.clicked.connect(self.DrawArc)
self.pushButton_9.clicked.connect(self.DrawPath)
self.Draw = ““
self.Line_list = [0000]
self.Point_list = []
self.Elipse_list = [0000]
self.Rectangle_list = [0000]
self.Polygon_list = []
self.Pie_list = [0000]
self.Arc_list = [0000]
def DrawLine(self):
self.update()
self.Draw = “Line“
def DrawPoint(self):
self.update()
self.Draw = “Point“
def DrawElipse(self):
self.update()
self.Draw = “Elipse“
def DrawRectangle(self):
self.update()
self.Draw = “Rectangle“
def DrawText(self):
self.update()
self.Draw = “Text“
def DrawPolygon(self):
self.update()
self.Draw = “Polygon“
def DrawArc(self):
self.update()
self.Draw = “Arc“
def DrawPie(self):
self.update()
self.Draw = “Pie“
def DrawPath(self):
self.update()
self.Draw = “Path“
def paintEvent(self QPaintEvent):
painter = QPainter(self)
painter.setPen(QColor(16666250))
painter.begin(self)
if self.Draw == “Line“:
painter.drawLine(self.Line_list[0]self.Line_list[1]self.Line_list[2]self.Line_list[3])
print(“DrawLine“)
elif self.Draw == “Point“:
len_point_list = len(self.Point_list)/2
for i in range(int(len_point_list)):
painter.drawPoint(self.Point_list[i*2]self.Point_list[i*2+1])
print(“DrawPoint“)
elif self.Draw == “Elipse“:
painter.drawEllipse(self.Elipse_list[0]self.Elipse_list[1]self.Elipse_list[2]self.Elipse_list[3])
print(“DrawElipse“)
elif self.Draw == “Rectangle“:
painter.drawRect(self.Rectangle_list[0]self.Rectangle_list[1]self.Rectangle_list[2]self.Rectangle_list[3])
print(“DrawRectangle“)
elif self.Draw == “Text“:
painter.drawText(120120“文字“)
print(“DrawText“)
elif self.Draw == “Polygon“:
polygon = QPolygon()
if len(self.Polygon_list) >= 6:
polygon.setPoints(self.Polygon_list)
print(len(self.Polygon_list))
painter.drawPo
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-07-07 09:42 Darw\
目录 0 2018-07-07 09:42 Darw\.vs\
目录 0 2018-07-07 09:42 Darw\.vs\Darw\
目录 0 2018-07-07 09:42 Darw\.vs\Darw\v15\
文件 23040 2018-07-07 19:24 Darw\.vs\Darw\v15\.suo
目录 0 2018-07-07 18:55 Darw\Darw\
文件 816 2018-07-07 09:42 Darw\Darw.sln
文件 5881 2018-07-07 18:55 Darw\Darw\Darw.py
文件 1515 2018-07-07 09:42 Darw\Darw\Darw.pyproj
文件 3009 2018-07-07 13:18 Darw\Darw\Darw.ui
文件 2857 2018-07-07 13:22 Darw\Darw\ui.py
目录 0 2018-07-07 13:22 Darw\Darw\__pycache__\
文件 1884 2018-07-07 13:22 Darw\Darw\__pycache__\ui.cpython-36.pyc
相关资源
- PyQt5编写的大数据应用-高速公路违章
- QPainter绘制雷达图玫瑰图
- PyQt5_gpl-5.11.3.zip
- pyqt qss实现的360界面
- PyQt5类继承图
- PyQt4 参考手册
- PyQt5.zip--lib包
- QT 编写的画图软件
- 程序包.rar基于pyqt+OpenCV设计的用户密
- Dashboard.rar
- 登陆界面设计
- PyQ5基本窗口控件详解
- PyQt4 精彩分析26个
- pyqt5_tools-5.9.0.1.2-cp35-none-win_amd64.whl
- PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x64.exe
- 用PyQT5多线程爬取轻小说工具
- PyQt5开发与实战源代码
- PyQt5All.rar
- eric6 17.12和它的中文汉化包
- PYQT5与Matplotlib_2019最新参考资料 含程
- PyQt4-4.11.3-gpl-Py2.7-Qt4.8.6-x64.exe
- TimeLine2.rarQPainter时间轴绘制,实现刻
- pyqt5windows生成二维工具源码
- PyQt 开发的音乐播放器比较美观:D
- pyqt5PyQt5快速开发与实战
- pyqt5 2019学习手册 自编手册 可以当工
- pyqt5思维导图与笔记
- PyQt5-5.11.2-5.11.1-cp35.cp36.cp37.cp38-none-w
- PyQt5快速开发与实战PDF 带目录
- pyqt5_tools-5.11.3.1.4-cp37-none-win_amd64
评论
共有 条评论