|
近期学习PyQt6,现在遇到一个问题,请各位大神不吝赐教。代码如下:
from time import sleep
from PyQt6.QtWidgets import QDialog, QWidget, QApplication, QLabel, QMessageBox
from PyQt6.QtCore import QObject, pyqtSignal
from Information import Ui_Information #从py文件导面界面
import sys
class Example(QDialog, Ui_Information):
#声明带str类型参数的信号
infosignal = pyqtSignal(str)
def __init__(self, parent = None):
super(Example, self).__init__(parent)
self.setupUi(self)
#将信号连接到指定槽函数
self.infosignal.connect(self.textChangeEvnent)
#发射信号
self.infosignal.emit("正在安装")
sleep(1)
self.infosignal.emit("正在设置")
def textChangeEvnent(self, infotext):
self.label_Information.setText(infotext)
if __name__ == "__main__":
app = QApplication(sys.argv)
ex = Example()
ex.show()
sys.exit(app.exec())
原本想分别通过self.infosignal.emit("正在安装")和self.infosignal.emit("正在设置")改变self.label_Information显示文本,但是实际运行起来只显示self.infosignal.emit("正在设置")的文本。不知道问题出在哪里?
|
|