PyQt5 Qt Designer 新手教程(三)—— 对话框的最终实现

PyQt5 Qt Designer 新手教程(三)—— 对话框的最终实现教程博文一、前言上一节,我们用 Qt Designer 搭建了简易对话框窗体,那么这一节就是让对话框真正的成为一个窗口程序,并实现一定的功能。二、把 .ui 文件转换为 py 文件.ui 文件是 Qt Designer 的保存文件,是让它识别的;但是,对于 Python 来说,它还不认识,所以要把这个 .ui 文件转化为 .py 模块文件,再导入到自己的程序中,最终即可实现窗体功能。在 CMD 中输入类似 pyuic5 -.
摘要由CSDN通过智能技术生成

PyQt5 Qt Designer 新手教程(三)—— 对话框的最终实现

教程博文
一、前言

上一节,我们用 Qt Designer 搭建了简易对话框窗体,那么这一节就是让对话框真正的成为一个窗口程序,并实现一定的功能。

二、把 .ui 文件转换为 py 文件

.ui 文件是 Qt Designer 的保存文件,是让它识别的;但是,对于 Python 来说,它还不认识,所以要把这个 .ui 文件转化为 .py 模块文件,再导入到自己的程序中,最终即可实现窗体功能。
在 CMD 中输入类似 pyuic5 -o C:\Users\hp\Desktop\example\ui_newimagedlg.py C:\Users\hp\Desktop\example\newimagedlg.ui
即可:
在这里插入图片描述
参考博文:PyQt5 处理 .ui 与 .qrc 文件的操作记录

下面是 ui_findandreplacedlg.py的实际内容,可以参考:

# -*- coding: utf-8 -*-
#
# Created by: PyQt5 UI code generator 5.11.2
#
# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_FindAndReplaceDlg(object):
    def setupUi(self, FindAndReplaceDlg):
        FindAndReplaceDlg.setObjectName("FindAndReplaceDlg")
        FindAndReplaceDlg.resize(396, 192)
        self.hboxlayout = QtWidgets.QHBoxLayout(FindAndReplaceDlg)
        self.hboxlayout.setContentsMargins(9, 9, 9, 9)
        self.hboxlayout.setSpacing(6)
        self.hboxlayout.setObjectName("hboxlayout")
        self.vboxlayout = QtWidgets.QVBoxLayout()
        self.vboxlayout.setContentsMargins(0, 0, 0, 0)
        self.vboxlayout.setSpacing(6)
        self.vboxlayout.setObjectName("vboxlayout")
        self.gridlayout = QtWidgets.QGridLayout()
        self.gridlayout.setContentsMargins(0, 0, 0, 0)
        self.gridlayout.setSpacing(6)
        self.gridlayout.setObjectName("gridlayout")
        self.replaceLineEdit = QtWidgets.QLineEdit(FindAndReplaceDlg)
        self.replaceLineEdit.setObjectName("replaceLineEdit")
        self.gridlayout.addWidget(self.replaceLineEdit, 1, 1, 1, 1)
        self.findLineEdit = QtWidgets.QLineEdit(FindAndReplaceDlg)
        self.findLineEdit.setObjectName("findLineEdit")
        self.gridlayout.addWidget(self.findLineEdit, 0, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(FindAndReplaceDlg)
        self.label_2.setObjectName("label_2")
        self.gridlayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.label = QtWidgets.QLabel(FindAndReplaceDlg)
        self.label.setObjectName("label")
        self.gridlayout.addWidget(self.label, 0, 0, 1, 1)
        self.vboxlayout.addLayout(self.gridlayout)
        self.hboxlayout1 = QtWidgets.QHBoxLayout()
        self.hboxlayout1.setContentsMargins(0, 0, 0, 0)
        self.hboxlayout1.setSpacing(6)
        self.hboxlayout1.setObjectName("hboxlayout1")
        self.caseCheckBox = QtWidgets.QCheckBox(FindAndReplaceDlg)
        self.caseCheckBox.setObjectName("caseCheckBox")
        self.hboxlayout1.addWidget(self.caseCheckBox)
        self.wholeCheckBox = QtWidgets.QCheckBox(FindAndReplaceDlg)
        self.wholeCheckBox.setChecked(False)
        self.wholeCheckBox.setObjectName("wholeCheckBox")
        self.hboxlayout1.addWidget(self.wholeCheckBox)
        self.vboxlayout.addLayout(self.hboxlayout1)
        self.hboxlayout2 = QtWidgets.QHBoxLayout()
        self.hboxlayout2.setContentsMargins(0, 0, 0, 0)
        self.hboxlayout2.setSpacing(6)
        self.hboxlayout2.setObjectName("hboxlayout2")
        self.label_3 = QtWidgets.QLabel(FindAndReplaceDlg)
        self.label_3.setObjectName("label_3")
        self.hboxlayout2.addWidget(self.label_3)
        self.syntaxComboBox = QtWidgets.QComboBox(FindAndReplaceDlg)
        self.syntaxComboBox.setObjectName("syntaxComboBox")
        self.syntaxComboBox.addItem("")
        self.syntaxComboBox.addItem("")
        self.hboxlayout2.addWidget(self.syntaxComboBox)
        self.vboxlayout.addLayout(self.hboxlayout2)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.vboxlayout.addItem(spacerItem)
        self.hboxlayout.addLayout(self.vboxlayout)
        self.line = QtWidgets.QFrame(FindAndReplaceDlg)
        self.line.setFrameShape(QtWidgets.QFrame.VLine)
        self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line.setObjectName("line")
        self.hboxlayout.addWidget(self.line)
        self.vboxlayout1 = QtWidgets.QVBoxLayout()
        self.vboxlayout1.setContentsMargins(0, 0, 0, 0)
        self.vboxlayout1.setSpacing(6)
        self.vboxlayout1.setObjectName("vboxlayout1")
        self.findButton = QtWidgets.QPushButton(FindAndReplaceDlg)
        self.findButton.setObjectName("findButton")
        self.vboxlayout1.addWidget(self.findButton)
        self.replaceButton = QtWidgets.QPushButton(FindAndReplaceDlg)
        self.replaceButton.setObjectName("replaceButton")
        self.vboxlayout1.addWidget(self.replaceButton)
        self.replaceAllButton = QtWidgets.QPushButton(FindAndReplaceDlg)
        self.replaceAllButton.setObjectName("replaceAllButton")
        self.vboxlayout1.addWidget(self.replaceAllButton)
        spacerItem1 = QtWidgets.QSpacerItem(20, 16, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.vboxlayout1.addItem(spacerItem1)
        self.closeButton = QtWidgets.QPushButton(FindAndReplaceDlg)
        self.closeButton.setObjectName("closeButton")
        self.vboxlayout1.addWidget(self.closeButton)
        self.hboxlayout.addLayout(self.vboxlayout1)
        self.label_2.setBuddy(self.replaceLineEdit)
        self.label.setBuddy(self.findLineEdit)
        self.label_3.setBuddy(self.syntaxComboBox)

        self.retranslateUi(FindAndReplaceDlg)
        self.closeButton.clicked.connect(FindAndReplaceDlg.reject)
        QtCore.QMetaObject.connectSlotsByName(FindAndReplaceDlg)
        FindAndReplaceDlg.setTabOrder(self.findLineEdit, self.replaceLineEdit)
        FindAndReplaceDlg.setTabOrder(self.replaceLineEdit, self.caseCheckBox)
        FindAndReplaceDlg.setTabOrder(self.caseCheckBox, self.wholeCheckBox)
        FindAndReplaceDlg.setTabOrder(self.wholeCheckBox, self.syntaxComboBox)
        FindAndReplaceDlg.setTabOrder(self.syntaxComboBox, self.findButton)
        FindAndReplaceDlg.setTabOrder(self.findButton, self.replaceButton)
        FindAndReplaceDlg.setTabOrder(self.replaceButton, self.replaceAllButton)
        FindAndReplaceDlg.setTabOrder(self.replaceAllButton, self.closeButton)

    def retranslateUi(self, FindAndReplaceDlg):
        _translate = QtCore.QCoreApplication.translate
        FindAndReplaceDlg.setWindowTitle(_translate("FindAndReplaceDlg", "Find and Replace"))
        self.label_2.setText(_translate("FindAndReplaceDlg", "Replace w&ith:"))
        self.label.setText(_translate("FindAndReplaceDlg", "Find &what:"))
        self.caseCheckBox.setText(_translate("FindAndReplaceDlg", "&Case sensitive"))
        self.wholeCheckBox.setText(_translate("FindAndReplaceDlg", "Wh&ole words"))
        self.label_3.setText(_translate("FindAndReplaceDlg", "&Syntax:"))
        self.syntaxComboBox.setItemText(0, _translate("FindAndReplaceDlg", "Literal text"))
        self.syntaxComboBox.setItemText(1, _translate("FindAndReplaceDlg", "Regular expression"))
        self.findButton.setText(_translate("FindAndReplaceDlg", "&Find"))
        self.replaceButton.setText(_translate("FindAndReplaceDlg", "&Replace"))
        self.replaceAllButton.setText(_translate("FindAndReplaceDlg", "Replace &All"))
        self.closeButton.setText(_translate("FindAndReplaceDlg"
  • 11
    点赞
  • 99
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值