当前位置:网站首页>PyQt5学习一(环境搭建)
PyQt5学习一(环境搭建)
2022-07-29 20:29:00 【qq_34981】
1.工具
Python
PyCharm
PyQt5模块
PyQt5模块可以在PyCharm软件中直接进行安装。
2.PyQt5模块安装
在PyCharm工具的下发Terminal中输入如下两条命令进行安装
pip install PyQt5
pip install PyQt5-tools
3.配置QtDesigner、PyUIC、PyRCC
1.在pycharm中点击“file” -> "Settings"选项
2.在弹出的对话框中选择"Tools" -> "External Tools"
3.点击“+”,在弹出的对话框中设置QtDesigner
Name:QtDesigner
Program:designer.exe所在的路径
Working directory:$ProjectFileDir$
4.点击“+”,在弹出的对话框中设置PyUIC
Name:PyUIC
Program:填入python.exe的路径
Arguments:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
Working directory:$FileDir$
5.点击“+”,在弹出的对话框中设置PyRCC
Name:PyRCC
Program:填入pyrcc5.exe的路径
Arguments:$FileName$ -o $FileNameWithoutExtension$_rc.py
Working directory:$FileDir$
4.编写界面
1.点击PyCharm菜单栏的“Tools” ->“External Tools” -> "QtDesigner"。来运行QtDesigner。
2.选择“Dialog without Button”来创建一个空白页
3.在左侧菜单栏中选择“Text Browser”,并拖拉到对话框中。“双击”自己添加的Browser,在其中输入"Hello Wrold"。
4.“Ctrl+s”保存,此时会在自己的工程目录下看到自己保存的文件。
5.在"test.ui"上右键,在“External Tools”中选择“PyUIC”。
,
6.此时在工程目录下会出现“test.py”的文件。如果没有出现,可以在工程目录上右键,选择“Reload from Disk”来重新加载文件。此时"test.py"文件就会出现了。
5.编译并运行UI
在另外一个文件中导入如下代码。
import sys
import test
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import QInputDialog, QLineEdit, QDialog
if __name__ == '__main__':
# 创建QApplication类的实例
myapp = QApplication(sys.argv)
# 创建一个对话框
myDlg = QDialog()
# 创建自己绘制的对话框
myUI = test.Ui_Dialog()
# 将对话框依附于主窗体
myUI.setupUi(myDlg)
# 显示窗口
myDlg.show()
# 进入程序的主循环,并通过exit函数确保主循环安全结束(该释放的资源一定要释放)
sys.exit(myapp.exec_())
附上可能出现的错误以及解决方法。(主要是Pyqt4升级到pyqt5遇到的)
1. NameError: name 'QApplication' is not defined
from PyQt5.QtWidgets import QApplication
2. NameError: name 'QLabel' is not defined
from PyQt5.QtWidgets import *
3. NameError: name 'QDialog' is not defined
from PyQt5.QtWidgets import QInputDialog, QLineEdit, QDialog
运行代码,则显示出自己绘制的UI
边栏推荐
- WPF 实现抽屉菜单
- json-c实现json和结构体之间的相互转换
- MSNs-SS-siRNA二氧化硅-二硫键-核酸RNA|HA-SS-siRNA,hyaluronic acid透明质酸修饰RNA(RNA修饰剂)
- There is a fee for the picture bed software. Forget it, I wrote an open source free one.
- LeetCode 0593. 有效的正方形
- C# 窗体与子线程数据交互
- 太卷了,企业级的智慧物业系统,也完全开源....
- 240. Searching 2D Matrix II
- JS实现百叶窗特效
- LeetCode--single linked list--146.LRU cache
猜你喜欢
随机推荐
The demand for VR live broadcast marketing is increasing, and the data module is paving the way for us
网站ping端口的操作方法和命令介绍
Writing Elegant Kotlin Code: Talk About What I Think "Kotlinic"
conda虚拟环境 | install 与 list 问题
Kotlin - Coroutine Scope CoroutineScope, Coroutine Builder CoroutineBuilder, Coroutine Scope Function CoroutineScope Functiom
核壳二氧化钛纳米颗粒修饰DNA|二氢杨梅素修饰DNA药物|相关介绍
OneNote tutorial, how to take notes in OneNote?
mysql 获取字段注释 和获取表字段
C# 窗体与子线程数据交互
博世集团启动量子数字孪生计划
【无标题】
解析掌握现代化少儿编程实操能力
用 Array.every & Array.some 匹配全部/部分内容 es6
ES6用法,面试大全
MSNs-SS-siRNA二氧化硅-二硫键-核酸RNA|HA-SS-siRNA,hyaluronic acid透明质酸修饰RNA(RNA修饰剂)
回归——分层回归
【593. Valid Square】
4. Implementation Guide for GET_ENTITYSET Method of SAP ABAP OData Service Data Provider Class
json-c实现json和结构体之间的相互转换
人社部公布“数据库运行管理员”成新职业,OceanBase参与制定职业标准