pyside2 父窗口與子窗口信號量傳遞數據


父窗口類設置 message信息

def set_message(self, parameter):
    self.ui.statusbar.showMessage(parameter)

子窗口類里 定義信號量

message = QtCore.Signal(str)

子窗口類里 傳遞信號

def set_message(self, message):
    self.message.emit(message)

父窗口類設置 連接信號

home_ui.message.connect(self.set_message)

這樣只要在子類中調用set_message的函數,父類窗口的statusbar就能刷新數據(不能看到過程,只有結果)

多線程刷新ui(在程序執行的時候可以更新ui界面),可以實時看到信息

def statusMessage(func, arg):  # 新線程入口函數
    if isinstance(arg, tuple):
        s = ''
        for i in arg:
            s += (str(i) + ' ')
        arg = s
    thread = Thread(target=func, args=(arg,))
    thread.start()

如何調用:

statusMessage(self.thread_message, str_message)

假如是子窗口的子窗口,多傳遞一位信號量即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM