PyQt5 – 如何改变预先存在的标签的文本 | setText方法

  • Post category:Python

PyQt5是Python语言的一个GUI程序库,它可以让程序员使用Python语言构建跨平台的应用程序。在PyQt5中,我们可以使用QLabel来显示文本标签,setText方法可以用来改变预先存在的标签的文本。

下面我们来看一下setText方法的完整使用攻略。

设置标签文本

需要修改标签的文本,将其改为新的文本,可以使用setText()方法。其函数原型如下:

setLabelText(str)

其中,str是需要设置的新的文本内容。

下面是示例代码:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel

class Example(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        label = QLabel('初始文本', self)
        label.move(10, 50)

        self.setGeometry(300, 300, 350, 200)
        self.setWindowTitle('设置标签文本')
        self.show()

        label.setText('修改后的文本')

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

在这个示例中,我们创建了一个QWidget,其默认大小为350×200。接着,我们创建了一个初始文本为“初始文本”的标签,并将其移动到了(10, 50)的位置。在最后,我们调用了setLabelText()方法,将标签的文本修改为“修改后的文本”。

按钮改变标签文本

我们还可以使用按钮来实现改变标签文本的功能。

示例代码如下:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QPushButton

class Example(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.label = QLabel('初始文本', self)
        self.label.move(10, 50)

        btn = QPushButton('修改标签文本', self)
        btn.move(10, 10)
        btn.clicked.connect(self.changeLabel)

        self.setGeometry(300, 300, 350, 200)
        self.setWindowTitle('按钮改变标签文本')
        self.show()

    def changeLabel(self):
        self.label.setText('修改后的文本')

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

在这个示例中,我们创建了一个QPushButton,并指定其文本为“修改标签文本”,将它点击后的响应关联到了changeLabel()函数。在changeLabel()函数内,我们获取之前创建的标签self.label,然后调用setText()方法,将标签的文本修改为“修改后的文本”。

这样,我们就完成了使用setText()方法来改变预先存在的标签文本的完整使用攻略。