配置PyQt6, QtDesigner, UIC工具,一步到位

1. 首先安装qt6

在终端中安装qt6,pip install pyqt6 不区分大小写的

这三个应该都有的,如果没有报错在来安装,这种安装比较简单,也是同样的安装方法

2. 下载Qt Designer 一个图形用户界面设计工具

 ​​​​​​Qt Designer Download for Windows and Mac

 选择Mac版

提示出现无法打开

设置搜索隐私,点击仍要打开,输入密码后,就可以安装了

安装成功

我这里就不配置在pycharm里面了

直接在启动台中打开更方便,要是需要的的话,可以按照下面的方法

3. 最重要的是UIC的配置,可以将设计好的UI界面转化为python源码

3.1 先查看pyqt6的路径

3.2 终端执行   open  /Users/liu/Library/Python/3.9/lib/python/site-packages

在访达中打开


查看是否有uic这个文件目录

进入pycharm配置工具: 

这三个参数:

第一个就是你的python路径 可以通过 which pyton 查看

第二个 就是运行uic程序要带的参数,包括uic的路径,源文件名,目标文件名

我这里的是默认的路径,所以参数就是

-m PyQt6.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py

第三个:就是当前目录

$ProjectFileDir$

一定要保存

4.简单测试,先设计个简单的登录

然后将保存的ui文件,保存,并放到pycharm的项目目录中,

点击菜单中的Tools -> ExternalTools -> PyUIC

就会生成一个同名的.py的文件

进入 .py文件在最后加上就可以运行了

if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QWidget()
    ui = Ui_Form()
    ui.setupUi(Form)
    Form.show()
    app.exec()

完整代码:

# Form implementation generated from reading ui file 'untitled.ui'
#
# Created by: PyQt6 UI code generator 6.7.0
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again.  Do not edit this file unless you know what you are doing.
import sys

from PyQt6 import QtCore, QtGui, QtWidgets


class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(279, 217)
        self.widget = QtWidgets.QWidget(parent=Form)
        self.widget.setGeometry(QtCore.QRect(12, 12, 163, 82))
        self.widget.setObjectName("widget")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.widget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(parent=self.widget)
        self.label.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.formLayout = QtWidgets.QFormLayout()
        self.formLayout.setObjectName("formLayout")
        self.label_2 = QtWidgets.QLabel(parent=self.widget)
        self.label_2.setObjectName("label_2")
        self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_2)
        self.lineEdit = QtWidgets.QLineEdit(parent=self.widget)
        self.lineEdit.setObjectName("lineEdit")
        self.formLayout.setWidget(0, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit)
        self.label_3 = QtWidgets.QLabel(parent=self.widget)
        self.label_3.setObjectName("label_3")
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.LabelRole, self.label_3)
        self.lineEdit_2 = QtWidgets.QLineEdit(parent=self.widget)
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.lineEdit_2)
        self.verticalLayout.addLayout(self.formLayout)

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

    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))
        self.label.setText(_translate("Form", "登录"))
        self.label_2.setText(_translate("Form", "账号"))
        self.label_3.setText(_translate("Form", "密码"))


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QWidget()
    ui = Ui_Form()
    ui.setupUi(Form)
    Form.show()
    app.exec()

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值