返回顶部
首页 > 资讯 > 精选 >PyQt5中使用QtDesigner怎么实现文本框读写操作
  • 327
分享到

PyQt5中使用QtDesigner怎么实现文本框读写操作

2023-06-15 12:06:27 327人浏览 八月长安
摘要

PyQt5中使用QtDesigner怎么实现文本框读写操作?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。主要内容:读、写 输入控件(Input Widgets)

PyQt5中使用QtDesigner怎么实现文本框读写操作?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

主要内容:

读、写 输入控件(Input Widgets)中的内容(str)

保存数据到txt文件

从txt文件中读内容,与输入控件中内容比较

PyQt5中使用QtDesigner怎么实现文本框读写操作

将上述各种输入控件(Input Widgets)中的内容保存到txt文件中:

Ui文件

# -*- coding: utf-8 -*-from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_Dialog(object):    def setupUi(self, Dialog):        Dialog.setObjectName("Dialog")        Dialog.resize(839, 589)        Dialog.setSizeGripEnabled(True)        self.pushButton = QtWidgets.QPushButton(Dialog)        self.pushButton.setGeometry(QtCore.QRect(210, 390, 91, 41))        self.pushButton.setObjectName("pushButton")        self.pushButton_2 = QtWidgets.QPushButton(Dialog)        self.pushButton_2.setGeometry(QtCore.QRect(530, 390, 91, 41))        self.pushButton_2.setObjectName("pushButton_2")        self.lineEdit = QtWidgets.QLineEdit(Dialog)        self.lineEdit.setGeometry(QtCore.QRect(140, 460, 291, 20))        self.lineEdit.setObjectName("lineEdit")        self.textEdit = QtWidgets.QTextEdit(Dialog)        self.textEdit.setGeometry(QtCore.QRect(140, 110, 541, 261))        self.textEdit.setObjectName("textEdit")        self.plainTextEdit = QtWidgets.QPlainTextEdit(Dialog)        self.plainTextEdit.setGeometry(QtCore.QRect(140, 490, 441, 91))        self.plainTextEdit.setObjectName("plainTextEdit")        self.spinBox = QtWidgets.QSpinBox(Dialog)        self.spinBox.setGeometry(QtCore.QRect(30, 290, 81, 22))        self.spinBox.setObjectName("spinBox")        self.doubleSpinBox = QtWidgets.QDoubleSpinBox(Dialog)        self.doubleSpinBox.setGeometry(QtCore.QRect(30, 340, 81, 22))        self.doubleSpinBox.setProperty("showGroupSeparator", False)        self.doubleSpinBox.setPrefix("")        self.doubleSpinBox.setProperty("value", 3.14)        self.doubleSpinBox.setObjectName("doubleSpinBox")        self.comboBox = QtWidgets.QComboBox(Dialog)        self.comboBox.setGeometry(QtCore.QRect(30, 60, 141, 22))        self.comboBox.setObjectName("comboBox")        self.comboBox.addItem("")        self.comboBox.addItem("")        self.comboBox.addItem("")        self.comboBox.addItem("")        self.comboBox.addItem("")        self.comboBox.addItem("")        self.fontComboBox = QtWidgets.QFontComboBox(Dialog)        self.fontComboBox.setGeometry(QtCore.QRect(230, 60, 189, 22))        self.fontComboBox.setObjectName("fontComboBox")        self.retranslateUi(Dialog)        QtCore.QMetaObject.connectSlotsByName(Dialog)    def retranslateUi(self, Dialog):        _translate = QtCore.QCoreApplication.translate        Dialog.setWindowTitle(_translate("Dialog", "Dialog"))        self.pushButton.setText(_translate("Dialog", "确定/保存"))        self.pushButton_2.setText(_translate("Dialog", "退出"))        self.lineEdit.setText(_translate("Dialog", "123"))        self.textEdit.sethtml(_translate("Dialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"Http://www.w3.org/TR/REC-html40/strict.dtd\">\n""<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/CSS\">\n""p, li { white-space: pre-wrap; }\n""</style></head><body style=\" font-family:\'SimSun\'; font-size:9pt; font-weight:400; font-style:nORMal;\">\n""<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:12pt;\">input content:</span></p></body></html>"))        self.plainTextEdit.setPlainText(_translate("Dialog", "plainTextEdit"))        self.comboBox.setItemText(0, _translate("Dialog", "item1"))        self.comboBox.setItemText(1, _translate("Dialog", "item2"))        self.comboBox.setItemText(2, _translate("Dialog", "item3"))        self.comboBox.setItemText(3, _translate("Dialog", "item4"))        self.comboBox.setItemText(4, _translate("Dialog", "item5"))        self.comboBox.setItemText(5, _translate("Dialog", "item6"))if __name__ == "__main__":    import sys    app = QtWidgets.QApplication(sys.argv)    Dialog = QtWidgets.QDialog()    ui = Ui_Dialog()    ui.setupUi(Dialog)    Dialog.show()    sys.exit(app.exec_())

Main文件

# -*- coding: utf-8 -*-"""Module implementing file_dailog."""import sysfrom PyQt5.QtCore import pyqtSlotfrom PyQt5.QtWidgets import QDialogfrom PyQt5 import QtWidgetsfrom Ui_file_operation import Ui_DialoGClass file_dailog(QDialog, Ui_Dialog):    """    Class documentation Goes here.    """    def __init__(self, parent=None):        super(file_dailog, self).__init__(parent)        self.setupUi(self)        self.pushButton.mousePressEvent = self.pushButton_clicked        def pushButton_clicked(self, a):        self.logging_data()            @pyqtSlot()    def on_pushButton_2_clicked(self):        sys.exit(0)        def logging_data(self):        with open(r'logs\data.txt', 'w+') as f:            f.write(self.textEdit.toPlainText()+'\n')            f.write(self.lineEdit.text()+'\n')            f.write(self.plainTextEdit.toPlainText()+'\n')            f.write(self.comboBox.currentText()+'\n')            f.write(self.fontComboBox.currentText()+'\n')            f.write(self.fontComboBox.currentText()+'\n')            f.write(str(self.spinBox.value())+'\n')            f.write(str(self.doubleSpinBox.value())+'\n')                    if __name__ == "__main__":    app = QtWidgets.QApplication(sys.argv)    ui = file_dailog()    ui.show()    sys.exit(app.exec_())Main文件

实战案例:

登录框--->输入账号密码--->与txt文件中账号密码进行验证--->进入下一个界面

PyQt5中使用QtDesigner怎么实现文本框读写操作

UI文件

# -*- coding: utf-8 -*-from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_ok_cancle_Dialog(object):    def setupUi(self, ok_cancle_Dialog):        ok_cancle_Dialog.setObjectName("ok_cancle_Dialog")        ok_cancle_Dialog.resize(411, 305)        ok_cancle_Dialog.setSizeGripEnabled(True)        self.horizontalLayout_4 = QtWidgets.QHBoxLayout(ok_cancle_Dialog)        self.horizontalLayout_4.setSizeConstraint(QtWidgets.QLayout.SetMinimumSize)        self.horizontalLayout_4.setSpacing(0)        self.horizontalLayout_4.setObjectName("horizontalLayout_4")        self.frame = QtWidgets.QFrame(ok_cancle_Dialog)        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)        self.frame.setFrameShadow(QtWidgets.QFrame.Raised)        self.frame.setObjectName("frame")        self.verticalLayout = QtWidgets.QVBoxLayout(self.frame)        self.verticalLayout.setObjectName("verticalLayout")        self.frame_2 = QtWidgets.QFrame(self.frame)        self.frame_2.setFrameShape(QtWidgets.QFrame.StyledPanel)        self.frame_2.setFrameShadow(QtWidgets.QFrame.Raised)        self.frame_2.setObjectName("frame_2")        self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame_2)        self.horizontalLayout.setObjectName("horizontalLayout")        self.label = QtWidgets.QLabel(self.frame_2)        font = QtGui.QFont()        font.setPointSize(15)        font.setBold(True)        font.setWeight(75)        self.label.setFont(font)        self.label.setObjectName("label")        self.horizontalLayout.addWidget(self.label)        self.lineEdit = QtWidgets.QLineEdit(self.frame_2)        self.lineEdit.setMinimumSize(QtCore.QSize(0, 25))        self.lineEdit.setObjectName("lineEdit")        self.horizontalLayout.addWidget(self.lineEdit)        self.verticalLayout.addWidget(self.frame_2)        self.frame_3 = QtWidgets.QFrame(self.frame)        self.frame_3.setFrameShape(QtWidgets.QFrame.StyledPanel)        self.frame_3.setFrameShadow(QtWidgets.QFrame.Raised)        self.frame_3.setObjectName("frame_3")        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.frame_3)        self.horizontalLayout_2.setObjectName("horizontalLayout_2")        self.label_2 = QtWidgets.QLabel(self.frame_3)        font = QtGui.QFont()        font.setPointSize(15)        font.setBold(True)        font.setWeight(75)        self.label_2.setFont(font)        self.label_2.setObjectName("label_2")        self.horizontalLayout_2.addWidget(self.label_2)        self.lineEdit_2 = QtWidgets.QLineEdit(self.frame_3)        self.lineEdit_2.setMinimumSize(QtCore.QSize(0, 25))        self.lineEdit_2.setText("")        self.lineEdit_2.setFrame(True)        self.lineEdit_2.setEchoMode(QtWidgets.QLineEdit.PassWord)        self.lineEdit_2.setReadOnly(False)        self.lineEdit_2.setObjectName("lineEdit_2")        self.horizontalLayout_2.addWidget(self.lineEdit_2)        self.verticalLayout.addWidget(self.frame_3)        self.label_3 = QtWidgets.QLabel(self.frame)        self.label_3.setMaximumSize(QtCore.QSize(16777215, 20))        font = QtGui.QFont()        font.setPointSize(10)        font.setBold(False)        font.setWeight(50)        self.label_3.setFont(font)        self.label_3.setStyleSheet("color: rgb(255, 0, 0);")        self.label_3.setText("")        self.label_3.setAlignment(QtCore.Qt.AlignCenter)        self.label_3.setObjectName("label_3")        self.verticalLayout.addWidget(self.label_3)        self.frame_4 = QtWidgets.QFrame(self.frame)        self.frame_4.setFrameShape(QtWidgets.QFrame.StyledPanel)        self.frame_4.setFrameShadow(QtWidgets.QFrame.Raised)        self.frame_4.setObjectName("frame_4")        self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.frame_4)        self.horizontalLayout_3.setObjectName("horizontalLayout_3")        self.pushButton = QtWidgets.QPushButton(self.frame_4)        font = QtGui.QFont()        font.setPointSize(11)        font.setBold(True)        font.setWeight(75)        self.pushButton.setFont(font)        self.pushButton.setStyleSheet("background-color: rgb(116, 255, 155);")        self.pushButton.setObjectName("pushButton")        self.horizontalLayout_3.addWidget(self.pushButton)        spacerItem = QtWidgets.QSpacerItem(30, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum)        self.horizontalLayout_3.addItem(spacerItem)        self.pushButton_2 = QtWidgets.QPushButton(self.frame_4)        font = QtGui.QFont()        font.setPointSize(11)        font.setBold(True)        font.setWeight(75)        self.pushButton_2.setFont(font)        self.pushButton_2.setStyleSheet("background-color: rgb(62, 108, 73);")        self.pushButton_2.setObjectName("pushButton_2")        self.horizontalLayout_3.addWidget(self.pushButton_2)        self.verticalLayout.addWidget(self.frame_4)        self.horizontalLayout_4.addWidget(self.frame)        self.retranslateUi(ok_cancle_Dialog)        QtCore.QMetaObject.connectSlotsByName(ok_cancle_Dialog)    def retranslateUi(self, ok_cancle_Dialog):        _translate = QtCore.QCoreApplication.translate        ok_cancle_Dialog.setWindowTitle(_translate("ok_cancle_Dialog", "Dialog"))        self.label.setText(_translate("ok_cancle_Dialog", "账号:"))        self.label_2.setText(_translate("ok_cancle_Dialog", "密码:"))        self.pushButton.setText(_translate("ok_cancle_Dialog", "确认"))        self.pushButton_2.setText(_translate("ok_cancle_Dialog", "取消"))if __name__ == "__main__":    import sys    app = QtWidgets.QApplication(sys.argv)    ok_cancle_Dialog = QtWidgets.QDialog()    ui = Ui_ok_cancle_Dialog()    ui.setupUi(ok_cancle_Dialog)    ok_cancle_Dialog.show()    sys.exit(app.exec_())

main文件

# -*- coding: utf-8 -*-from PyQt5.QtCore import pyqtSlotfrom PyQt5.QtWidgets import QDialogfrom PyQt5 import QtWidgetsfrom Ui_ok_cancel import Ui_ok_cancle_Dialogclass ok_cancle_Dialog(QDialog, Ui_ok_cancle_Dialog):    def __init__(self, parent=None):        super(ok_cancle_Dialog, self).__init__(parent)        self.setupUi(self)        @pyqtSlot()    def on_pushButton_clicked(self):        f = open(r'logs\account.txt', 'r+',encoding='utf8')    #从logs文件夹下读取account.txt文件 中的账号 密码        data = f.readlines()        confirm = data[0].rstrip('\n') == self.lineEdit.text() and data[1] == self.lineEdit_2.text()        if confirm:            from selenium import WEBdriver            browser = webdriver.Chrome()            browser.get("http://www.taobao.com")            browser.maximize_window()        else:            #print('=======================')            self.label_3.setText('账号或密码错误请重新输入')                    f.close()    @pyqtSlot()    def on_pushButton_2_clicked(self):        self.lineEdit.setText('')        self.lineEdit_2.setText('')        self.label_3.setText('')if __name__ == "__main__":    import sys    app = QtWidgets.QApplication(sys.argv)    ui = ok_cancle_Dialog()    ui.show()    sys.exit(app.exec_())

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网精选频道,感谢您对编程网的支持。

--结束END--

本文标题: PyQt5中使用QtDesigner怎么实现文本框读写操作

本文链接: https://lsjlt.com/news/280035.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • PyQt5中使用QtDesigner怎么实现文本框读写操作
    PyQt5中使用QtDesigner怎么实现文本框读写操作?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。主要内容:读、写 输入控件(Input Widgets)...
    99+
    2023-06-15
  • PyQt5结合QtDesigner实现文本框读写操作
    目录主要内容:实战案例:本文主要介绍了PyQt5结合QtDesigner实现文本框读写操作,分享给大家,具体如下: 主要内容: 1、读、写 输入控件(Input Widgets)中的...
    99+
    2024-04-02
  • VB.NET中怎么实现读写文本文件操作
    VB.NET中怎么实现读写文本文件操作,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。VB.NET读写文本文件为了把text保存到文件,创建一个基于FileStream的Stre...
    99+
    2023-06-17
  • Java中怎么实现文件的读写操作
    在Java中,文件的读写操作可以通过使用Java I/O库来实现。以下是一些常用的方法: 使用FileInputStream和Fi...
    99+
    2024-03-05
    java
  • Cookie的读写操作怎么实现
    本篇内容主要讲解“Cookie的读写操作怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Cookie的读写操作怎么实现”吧!  一、Cookie的出现  浏览器和服务器之间的通信少不了HT...
    99+
    2023-06-04
  • php中怎么实现Mysql读写分离操作
    php中怎么实现Mysql读写分离操作,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。连接案例:<php require...
    99+
    2024-04-02
  • VB中如何实现文件的读写操作
    在VB中,可以使用以下方法实现文件的读写操作: 使用FileSystem对象来进行文件的读写操作。 文件读取: Dim fi...
    99+
    2024-04-03
    VB
  • css只读文本框怎么实现
    今天小编给大家分享一下css只读文本框怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。CSS 只读文本框在Web开发中...
    99+
    2023-07-06
  • WPF中下拉框可作选择项作为只读文本框怎么使用
    本篇内容介绍了“WPF中下拉框可作选择项作为只读文本框怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、需求当前在开发的系统需要一个...
    99+
    2023-07-05
  • Golang中怎么处理文件读写操作
    在Golang中处理文件读写操作通常使用os包和io/ioutil包。下面是一些常见的文件读写操作示例: 读取文件内容: pac...
    99+
    2024-03-13
    Golang
  • C#怎么使用StreamReader和StreamWriter类读写操作文件
    这篇文章主要讲解了“C#怎么使用StreamReader和StreamWriter类读写操作文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#怎么使用StreamReader和Strea...
    99+
    2023-06-30
  • python怎么实现对doc,txt,xls文档的读写操作
    本篇内容介绍了“python怎么实现对doc,txt,xls文档的读写操作”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!python实现对d...
    99+
    2023-06-29
  • C#中怎么进行文件的读写操作
    在C#中进行文件的读写操作,可以使用FileStream、StreamReader和StreamWriter这几个类。下面是一个简单...
    99+
    2024-04-03
    C#
  • 如何实现Python中ini配置文件读写操作
    这篇文章将为大家详细讲解有关如何实现Python中ini配置文件读写操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。导入模块import configparser # py...
    99+
    2023-06-29
  • 关于Java中如何实现文件的读写操作
    目录文件读取FileInputStream:BufferedReader:文件写入FileOutputStream:PrintWriter:文件复制文件删除文件重命名总结:在Java...
    99+
    2023-05-18
    Java读写 Java文件读写
  • Python Json读写操作之JsonPath怎么使用
    Python Json读写操作_JsonPath用法详解1. 介绍JSONPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括Javascript、Python、PHP和Java。JSONPath的安...
    99+
    2023-05-14
    Python JSON jsonpath
  • Cassandra的读取和写入操作怎么实现
    Cassandra 是一个高性能的分布式数据库系统,其读取和写入操作可以通过 CQL(Cassandra Query Languag...
    99+
    2024-04-02
  • 如何用 Java 实现高效的文件读写操作
    1. 使用缓冲流 缓冲流是一种可以将数据临时存储在缓冲区中的流。当需要读写数据时,它会先将数据读入或写入缓冲区,然后再从缓冲区读出或写入文件。这样可以减少对文件的读写次数,从而提高文件读写效率。 import java.io.*; p...
    99+
    2024-02-26
    Java 文件读写 性能优化
  • Shell中怎么实现文本去重操作
    这期内容当中小编将会给大家带来有关Shell中怎么实现文本去重操作,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。代码如下:ccccaaaabbbbddddbbbbccccaaaa现在需要对它进行去重处理,...
    99+
    2023-06-09
  • 如何在PHP中实现高效的文件读写操作?
    PHP 是一种广泛使用的编程语言,它在网站开发中扮演着重要的角色。在 PHP 中,文件读写操作是经常使用的功能之一,它可以帮助我们读取和写入文件,以便存储和处理数据。然而,文件读写操作可能会降低代码的性能,因此我们需要采取一些措施来提高 P...
    99+
    2023-08-27
    大数据 编程算法 文件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作