QtDesigner pyqt5 学习之旅(一)

本文详细介绍使用PyQt5和Python进行GUI界面开发的过程,包括环境配置、工具安装及使用,以及如何从UI文件生成Python代码并运行示例程序。

写在前边

最近接单数量持续下降导致生活水平也是在下降
所以我准备吧魔掌伸向我的同事(做**易语言(高手)开发 **,需要的可以联系)
抢他的生意 哈哈

开搞之前当前是先配置环境啦

安装 python3.7 pyqt5

pip install pyqt5

安装利器 pycharm

假装你安装好了

第一步

打开编辑利器 pycharm 找到设置(Ctrl + Alt + S)点开它
找到 Tools -> External Tools

点击(+)

添加 QtDesigner
在这里插入图片描述

Program:    D:\Python\Scripts\pyqt5designer.exe    
Working directory:  E:\Python\GUI\QtDesigner

第一个是 pyqt5designer.exe 的目录
第二个是 UI 保存目录(随便写 你能找到就行)
点击 ok

再添加一下 PyUIC
在这里插入图片描述

D:\Python\python.exe
-m PyQt5.uic.pyuic  $FileName$ -o $FileNameWithoutExtension$.py
E:\Python\GUI\QtDesigner

第一个 是python.exe的目录
第二个 是固定的
第三个是 之后 .py 保存目录(随便写 你能找到就行)
点击 ok
这样就配置完毕了

第二步

在这里插入图片描述
点击它
在这里插入图片描述
(注意这里用的拖)

在这里插入图片描述
点击保存
起个名字 test.ui
在这里插入图片描述
找到他 鼠标右击
在这里插入图片描述
之后就多了这么一个文件
在这里插入图片描述
修改一下 让他运行

源文件

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'test.ui'
#
# Created by: PyQt5 UI code generator 5.11.3
#
# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(320, 210, 75, 23))
        self.pushButton.setObjectName("pushButton")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.pushButton.setText(_translate("MainWindow", "PushButton"))


修改后的文件

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'test.ui'
#
# Created by: PyQt5 UI code generator 5.11.3
#
# WARNING! All changes made in this file will be lost!

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(320, 210, 75, 23))
        self.pushButton.setObjectName("pushButton")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.pushButton.setText(_translate("MainWindow", "PushButton"))

class MyWindow(QMainWindow, Ui_MainWindow):
    def __init__(self, parent=None):
        super(MyWindow, self).__init__(parent)
        self.setupUi(self)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    myWin = MyWindow()
    myWin.show()
    sys.exit(app.exec_())

效果图
在这里插入图片描述
基本就完事了

Qt Designer是PyQt5的可视化工具,用于设计和布局UI界面,而PyQt5是强大的Python框架,用于创建图形用户界面(GUI)应用程序,两者结合使用可高效创建应用程序。 使用前需安装PyQt5QtDesigner,可使用pip命令在Python环境中安装PyQt5。在PyQt 5.15.x及之前的版本中,Qt Designer的可执行文件designer.exe通常位于%Python_path%\Lib\site-packages\pyqt5_tools\Qt\bin\目录下;在PyQt 5.15.x及之后的版本中,该文件路径变更为%Python_path%\Lib\site-packages\qt5_applications\Qt\bin\designer.exe,找到并双击designer.exe可启动Qt Designer [^1][^2]。 在Pycharm中使用时,可先创建项目和环境,在pycharm中为项目选择相应环境,路径为File | Settings | Project: test | Python Interpreter,完成环境选择后,可在pycharm终端使用`pip install PyQt5`命令安装PyQt5 [^3]。 设计好UI界面后,还需将其与代码结合,以真正实现应用程序的功能。在结合过程中,PyQt5的信号和槽机制十分重要,该机制是种事件驱动编程范式,允许小部件(如按钮和菜单项)在特定用户交互发生时发出信号,并将这些信号连接到槽函数(即定义好的响应动作),从而实现用户界面与程序逻辑的松耦合和交互响应 [^4]。 以下是个简单示例代码,展示如何加载Qt Designer设计的UI文件并显示窗口: ```python import sys from PyQt5 import uic from PyQt5.QtWidgets import QApplication, QMainWindow class MainWindow(QMainWindow): def __init__(self): super().__init__() # 加载UI文件 uic.loadUi('your_ui_file.ui', self) if __name__ == '__main__': app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JwCode

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值