pyqt5中使用信号槽实现qtextedit追加式写入内容

it2023-07-11  78

0、使用信号与槽的机制

可以在多线程中随意修改控件的内容,信号槽具有多中方式,可以传递str,int等类型变量

1、首先在class类的下方定义一个信号槽

m_singal = pyqtSignal(str) # 定义一个信号槽

2、在__init__方法中进行信号槽的初始化

self.m_singal.connect(self.show_msg)

3、定义信号槽调用的show_msg方法,并且传递一个变量,同时获取textEdit控件的当前游标,使其移到最末尾,然后在该控件中使用append方法,追加写入。此方法中主要是实现具体的操作

def show_msg(self,msg): self.textEdit.moveCursor(QTextCursor.End) self.textEdit.append(msg)

4、在产生内容的地方发射自定义信号,msg为需要发射的内容

self.m_singal.emit(msg) #发射信号

 

最新回复(0)