Python多行文本框

有几天没发博客了,因为最近有点忙,所以没时间。今天抽空发一篇,也很简单,就是Python多行文本框。

我们直接举一个例子,就是打开文本,然后读取内容:

import sys
from PyQt5.QtWidgets import QWidget,QPushButton,QLineEdit,QTextEdit,QApplication,QToolTip

class Readtxt(QWidget):
    def __init__(self):
        super().__init__()
        self.settings()

    def settings(self):
        self.a = QLineEdit(self)
        self.a.setPlaceholderText('请输入读取文件的路径地址')
        self.a.setGeometry(50,20,320,20)

        self.info = QTextEdit(self)
        self.info.setGeometry(50,80,450,500)
        
        self.yes = QPushButton('确定',self)
        self.yes.clicked.connect(self.read_text)
        self.yes.move(400,15)
        
        self.setGeometry(300, 300, 600, 600)
        self.setWindowTitle('多行文本框')
        self.show()

    def read_text(self):
        try:
            addr = self.a.text()
            b = open(addr,'r',encoding='utf-8')
            thing = b.read()
            self.info.setPlainText(thing)
            b.close()
        except:
            self.info.setPlainText('打开失败')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Readtxt()
    sys.exit(app.exec_())

首先用QLineEdit创建一个文本框,赋值给self.a。self.info这个变量就是多行文本框。还有一个按钮。

然后是打开文件的方法。首先因为打开文件很容易出错,所以我用了try+except组合,处理异常情况。首先addr是文件地址,它获取了文本框的内容。然后再打开文件。注意,因为Python打开文件不能用反斜杠,所以大家如果要将这个程序作为自己平时的小工具,请自行将addr的反斜杠变为双反斜杠或斜杠。

然后thing来获取文本内容,这个文件名大家自取。然后是将读取的内容写到多行文本框,注意写上去后,如果字多,有一个调整上下的,而且可以自行复制。这是多行文本框与文本框的不一样。

好了,这是今天的Gui知识,如果大家喜欢,不妨花个五秒,加个关注,点个赞。如果大家有疑惑,可以在评论区询问,伙伴们也可以加我的QQ:3418772261。在QQ里,我可以提供答疑。那么下期再见了,拜拜!

你可能感兴趣的:(Python多行文本框)