| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> PyQT5 之 Qt Designer 介绍 -> 正文阅读 |
|
[C++知识库]PyQT5 之 Qt Designer 介绍 |
PyQT5简介pyqt5是一套Python绑定Digia QT5应用的框架。它可用于Python 2和3。本教程使用Python 3。Qt库是最强大的GUI库之一。pyqt5的官方网站http://www.riverbankcomputing.co.uk/news pyqt5做为Python的一个模块,它有620多个类和6000个函数和方法。这是一个跨平台的工具包,它可以运行在所有主要的操作系统,包括UNIX,Windows,Mac OS。pyqt5是双重许可。开发者可以在GPL和商业许可之间进行选择。 pyqt5的类别分为几个模块,包括以下:
QtCore:包含了核心的非GUI功能。此模块用于处理时间、文件和目录、各种数据类型、流、URL、MIME类型、线程或进程。 QtGui包含类窗口系统集成、事件处理、二维图形、基本成像、字体和文本。 qtwidgets模块包含创造经典桌面风格的用户界面提供了一套UI元素的类。 QtMultimedia包含的类来处理多媒体内容和API来访问相机和收音机的功能。 Qtbluetooth模块包含类的扫描设备和连接并与他们互动。描述模块包含了网络编程的类。这些类便于TCP和IP和UDP客户端和服务器的编码,使网络编程更容易和更便携。 Qtpositioning包含类的利用各种可能的来源,确定位置,包括卫星、Wi-Fi、或一个文本文件。 Enginio模块实现了客户端库访问Qt云服务托管的应用程序运行时。 Qtwebsockets模块包含实现WebSocket协议类。 QtWebKit包含一个基于Webkit2图书馆Web浏览器实现类。 Qtwebkitwidgets包含的类的基础webkit1一用于qtwidgets应用Web浏览器的实现。 QtXml包含与XML文件的类。这个模块为SAX和DOM API提供了实现。 QtSvg模块提供了显示SVG文件内容的类。可伸缩矢量图形(SVG)是一种描述二维图形和图形应用的语言。 QtSql模块提供操作数据库的类。 QtTest包含的功能,使pyqt5应用程序的单元测试 详细介绍参考链接:http://code.py40.com/pyqt5/14.html Qt Designer的介绍在PyQt中编写UI界面可以直接通过代码来实现,也可以通过Qt Designer来完成。Qt Designer的设计符合MVC的架构,其实现了视图和逻辑的分离,从而实现了开发的便捷。Qt Designer中的操作方式十分灵活,其通过拖拽的方式放置控件可以随时查看控件效果。Qt Designer生成的.ui文件(实质上是XML格式的文件)也可以通过pyuic5工具转换成.py文件。 安装
PyQt5工具配置以Vscode为例: 1.打开文件>首选项>设置 搜索:pyuic5和designer pyuic5我的为默认配置: designer:
找不到再去:
2.选择PYQT:New Form的话,就会打开qt designer 界面编辑器。
界面构成介绍左侧的 Widget Box 是各种可以自由拖动的组件
Containers 容器
Item Widgets 条目控件
Spacers 间隔(透明)
Buttons 按钮
nput Widgets 输入控件
Display Widgets 显示控件
中间的 MainWindow - untitled 窗体是画布,可以在上面放组件 objectName: 控件对象名 geometry: 相对坐标(px) x,y,width,height sizePolicy: 控件大小策略
minimumSize: 最小尺寸 maximumSize: 最大尺寸 (固定尺寸: minimumSize=maximumSize) font: 字体 cursor: 光标 windowTitle: 窗口标题 WindowsIcon: 窗口图标 iconSize: 图标大小 toolTip: 提示泡提示信息 statusTip: 状态栏提示信息 text: 控件文本 shortcut: 快捷键 horizontalSpacer: 水平间距 右下方的 Resource Browser 可以添加各种素材,比如图片,背景等等,暂时无视。 菜单栏通过双击 Type Here 添加一级菜单(File), 点开一级菜单双击 Type Here 添加动作(New File), 若点了后面的+, 并添加动作(Text File), 则动作(New File)将变成子菜单. 了解清楚界面后就可以进行实战开发了 实战用QtDesigner设计一个登录界面,用QTDesigner设计界面简单多了,而且更加直观。先看下效果图:
(1)打开QT界面设计工具QTDSIGNER 已经安装好之后,在“Python安装路径\Lib\site-packages\pyqt5_tools\Qt\bin”找到designer.exe。双击打开 (2)选择WDIGET,创建界面 修改输入密码的QlineEdit的echoMode的属性为Password 使用如下命令,把designer_login.ui文件转换成designer_login.py文件
pyuic5命令实现ui文件到py文件的转换,该命令的格式为:pyuic5 -o 目标文件 源文件 (6)编写主程序,调用UI程序
Pyinstaller打包成.exe文件用户登录显示程序界面和逻辑都实现了。下来就是要推广使用了。不是所有人电脑上都安装有python软件或者对应的python版本以及PyQt5工具。那么如何让程序在这些未安装python软件的机子上运行呢?可以使用pyinstaller工具将程序打包成.exe文件。pyinstaller使用方法可以参考《使用Pyinstaller转换.py文件为.exe可执行程序》。打包过程如下:
另一种带库的打包方式:
|
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年2日历 | -2025/2/5 22:54:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |