当前位置: 首页 > news >正文

上海电商网站开发公司网站微信建设运维经验

上海电商网站开发公司,网站微信建设运维经验,范县网站建设公司,wordpress 常用小工具栏PyQt5初探 - 一个简单的例程 引言一、安装配置二、使用2.1 PyQt5简单例程2.2 与c Qt深入对比 三、相关教程 引言 PyQt5是一个比较流行的Python图形用户界面(GUI)库,它基于Qt库(一个跨平台的C库,用于开发应用程序的图形界面)为Pyt…

PyQt5初探 - 一个简单的例程

  • 引言
  • 一、安装配置
  • 二、使用
    • 2.1 PyQt5简单例程
    • 2.2 与c++ Qt深入对比
  • 三、相关教程

引言

PyQt5是一个比较流行的Python图形用户界面(GUI)库,它基于Qt库(一个跨平台的C++库,用于开发应用程序的图形界面)为Python开发者提供了一个强大的工具,用于创建专业的GUI应用程序,而无需深入了解底层的C++编程。

  • 其与Qt (c++)相比,主要的优缺点如下:
    PyQt5优点:较高的开发效率和易用性,语法相对简单,python有意思的第三方库很多,可直接拿来用
    PyQt5缺点:较低的运行效率,特别是进行打包封装成可执行文件,体积很难缩小,进一步降低了运行效率
    感觉也是python相比c++的优缺点…

一、安装配置

网上教程很多,可参考如下博文:

python pyqt5+vtk安装以及配置采坑记录:https://blog.csdn.net/qq_38204686/article/details/123445607
PyQt5实现多文件调用以及UI和逻辑分离:https://zhuanlan.zhihu.com/p/95082345

二、使用

在这里插入图片描述

  • 程序运行如上图所示,源码如下所示:

2.1 PyQt5简单例程

    1. 本例程代码结构如下所示,其中main.py存放主函数,也是程序入口;main.py会调用MainWindow.py,里面存放主窗体相关函数;MainWindow.py会调用ui_MainWindow.py,里面是主窗体的界面设计;而ui_MainWindow.py是由designer.exe设计的MainWindow.ui使用pyuic5.exe生成的。(类似QtCreator的界面和逻辑分离)
      在这里插入图片描述
    1. main.py,创建一个主窗体并显示
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from MainWindow import MainWindow
import sysif __name__ == '__main__':app = QApplication(sys.argv)mainWindow = MainWindow()mainWindow.show()sys.exit(app.exec_())
    1. MainWindow.py,界面初始化,设置主窗体标题为"Title"
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from ui_MainWindow import Ui_MainWindow
import osclass MainWindow(QMainWindow):ui = Nonedef __init__(self, parent=None):super(MainWindow, self).__init__(parent)# 0. 界面初始化self.ui = Ui_MainWindow()self.ui.setupUi(self)self.setWindowTitle("Title")
    1. ui_MainWindow.py,由MainWindow.ui生成的py文件,供其他py调用,其在Qt designer中的显示和内容如下:
      在这里插入图片描述
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"><class>MainWindow</class><widget class="QMainWindow" name="MainWindow"><property name="geometry"><rect><x>0</x><y>0</y><width>799</width><height>620</height></rect></property><property name="windowTitle"><string>MainWindow</string></property><widget class="QWidget" name="centralwidget"><layout class="QGridLayout" name="gridLayout_2"><item row="0" column="0"><widget class="QLabel" name="label"><property name="text"><string>我是个标题</string></property><property name="alignment"><set>Qt::AlignCenter</set></property></widget></item></layout></widget><widget class="QMenuBar" name="menubar"><property name="geometry"><rect><x>0</x><y>0</y><width>799</width><height>26</height></rect></property></widget><widget class="QStatusBar" name="statusbar"/></widget><resources/><connections/>
</ui>

2.2 与c++ Qt深入对比

本文python使用的PyQt仿照了c++ Qt的结构,但还是略有不同:

    1. 文件结构
      在这里插入图片描述
      两者类似,都有main作为程序入口,只不过python没有.h和.cpp之分,c++还多了pro文件配置编译参数。两者的.ui文件一致,python的需要转为.py文件被调用,而c++的会自动生成ui_mainwindow.h被.cpp文件调用,如下图所示 (Qt creator会自动生成,VS好像还需要配置),保持之前使用c++ Qt的习惯,我将python下.ui文件转成的.py文件之前也增加了ui_
      在这里插入图片描述
    1. ui_mainwindow.hui_MainWindow.py
      在这里插入图片描述在这里插入图片描述
      setupUI函数一致,都要传递一个QMainWindow,然后对其进行修改。c++ Qt调用时候默认是给.h添加一个界面私有变量,然后.cpp调用其setupUI函数,传入类本身 (this指针)进行界面绘制。python也是类似的用法,看到有一篇博客没有new 一个Ui_MainWindow,而是直接继承Ui_MainWindow,都能调用其setupUI函数。
      在这里插入图片描述
      了解其UI文件生成以及调用的逻辑,自己直接在.py文件里写代码亦可。相比c++会灵活一些,毕竟没有私有变量。

三、相关教程

The complete PyQt5 tutorial — Create GUI applications with Python: https://www.pythonguis.com/pyqt5-tutorial/
PyQt5文档: https://www.riverbankcomputing.com/static/Docs/PyQt5/index.html#

http://www.dtcms.com/a/416570.html

相关文章:

  • 网站系统建设方案站嗨建站
  • 个人做电影网站违法吗杭州市住建局官网
  • 用宝塔面板快速构建LNMP环境
  • 一天一款实用的AI工具,第4期,AI翻译成英语
  • 表白网站制作源代码深圳市建设局网站首页
  • 电子商务网站建设方案书网站推广案例分析
  • h5如何做网站手机网站开发项目
  • 电子商务网站建设试题二济南标场馆建设有新进展
  • 网站百度推广加盟类网站建设
  • 微信电脑网站是什么原因硬件工程师培训机构哪家好
  • P3044题解
  • 彩票网站开发注意事情江苏省建设执业资格注册中心网站
  • 泉州建设网站开发承德网站建设方案
  • 信号量(一)
  • 网站建设好的公司专业服务app开发制定公司
  • 免费网站建东莞网站建设公司辉煌大厦
  • seo发展现状适合seo优化的站点
  • 网站到底是域名需要备案还是空间wordpress 数组
  • 网站优化关键词排名怎么做学校网站模板大全
  • 用路由器建设网站企业宣传片模板
  • WPS电信定制版
  • 国外有名的网站营销助手app下载
  • 汽车网站开发的需求分析大连外贸网站制作
  • 资源网站源码下载海口平台公司
  • 网站建设深圳市免费做一建或二建题目的网站
  • 广州市住房与城乡建设部网站网页制作如何设置网页背景
  • Roo Code的工具系统:智能开发的幕后引擎
  • 网站如果不续费会怎样wordpress默认参数
  • 网站用什么平台开发wordpress 添加目录权限
  • 算法训练.16