日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

解決PySide+Python子線程更新UI線程的問題

系統 1892 0

在我開發的系統,需要子線程去運行,然后把運行的結果發給UI線程,讓UI線程知道運行的進度。

首先創建線程很簡單

            
def newThread(self):
 d = Data()
 print '子線程的運行'
t1 = threading.Thread(target=newThread)
t1.setDaemon(True)
t1.start()
          

之后我發現用子線程去調用UI線程是行不通的,只能通過信號和槽來實現,于是

首先,定義一個類,讓他實現PySide.QtCore.QObject類

            
class Data(PySide.QtCore.QObject): 
 #定義信號
 mySignal = Signal()

 def __init__(self): 
  #這句話很重要
  super(Data, self).__init__()
 def run(self):
  mySignal.emit()

          

然后再把主線程的方法綁定到該槽上去

            
QtCore.QObject.connect(Data的實例,QtCore.SIGNAL('mySignal()'),'主線程的方法')
          

最后,就可以在子線程執行run方法的時候,就會調用UI線程的方法

以上這篇解決PySide+Python子線程更新UI線程的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 二连浩特市| 巴中市| 攀枝花市| 新巴尔虎左旗| 剑阁县| 炎陵县| 康马县| 陇西县| 莎车县| 略阳县| 福安市| 冷水江市| 乐东| 随州市| 耿马| 南昌县| 收藏| 偃师市| 正定县| 江门市| 张掖市| 许昌市| 博湖县| 美姑县| 兴和县| 武城县| 增城市| 工布江达县| 临清市| 怀宁县| 新宁县| 沅陵县| 平江县| 普兰店市| 瑞昌市| 库伦旗| 鄂温| 镇远县| 长沙县| 大厂| 登封市|