前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pyqt5将图形设计生成的ui文件转化为py文件

pyqt5将图形设计生成的ui文件转化为py文件

作者头像
里克贝斯
发布2021-05-21 15:11:50
1.1K0
发布2021-05-21 15:11:50
举报
文章被收录于专栏:图灵技术域图灵技术域

Qt Creator是跨平台的 Qt IDE, Qt Creator 是 Qt 被 Nokia 收购后推出的一款新的轻量级集成开发环境(IDE)。此 IDE 能够跨平台运行,支持的系统包括 Linux(32 位及 64 位)、Mac OS X 以及 Windows。根据官方描述,Qt Creator 的设计目标是使开发人员能够利用 Qt 这个应用程序框架更加快速及轻易的完成开发任务。

使用Qt Creator或designer图形界面画出的图形会产生ui界面,需要将ui文件转化为py文件。下面给出了步骤。

①打开qt creator选择一个模板

②选择模板配置直到完成

③进入主界面

下面是xml的ui文件

画一些控件

保存后会有3个文件

④进入保存的文件夹,打开终端(CMD)

输入命令(MAC 与Windows均可)

pyuic5 -o qttest.py qttest.ui

将ui文件转化为py文件

刚刚画出的Python代码:

代码语言:javascript
复制
# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'qttest.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_qttest(object):
    def setupUi(self, qttest):
        qttest.setObjectName("qttest")
        qttest.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(qttest)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(110, 300, 114, 32))
        self.pushButton.setObjectName("pushButton")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(300, 40, 59, 16))
        self.label.setObjectName("label")
        self.timeEdit = QtWidgets.QTimeEdit(self.centralwidget)
        self.timeEdit.setGeometry(QtCore.QRect(240, 190, 118, 22))
        self.timeEdit.setObjectName("timeEdit")
        self.dateEdit = QtWidgets.QDateEdit(self.centralwidget)
        self.dateEdit.setGeometry(QtCore.QRect(400, 350, 110, 22))
        self.dateEdit.setObjectName("dateEdit")
        qttest.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(qttest)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 22))
        self.menubar.setObjectName("menubar")
        qttest.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(qttest)
        self.statusbar.setObjectName("statusbar")
        qttest.setStatusBar(self.statusbar)

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

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

⑤此时解释器已经能够运行了,为了能够显示界面需要增加下面的主函数和pyqt的包

代码语言:javascript
复制
if __name__ == "__main__":
    import sys
    app = QApplication(sys.argv)
    widget = QWidget(None)
    Ui_Form().setupUi(widget)
    sys.exit(app.exec_())
    pass

注意相应的名称也要改。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-11-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档