簡體   English   中英

如何在Pyside,QtPy python中從主UI到Qthread發送列表?

[英]How to send a list from the main UI TO Qthread in Pyside, QtPy python?

我用Pyside(QtPy)編寫了一個應用程序。 該應用程序允許用戶:1.掃描路徑-應用程序將掃描默認路徑並將該路徑中的現有文件夾顯示為復選框列表。 2.用戶能夠選擇多個文件夾,然后對所有這些文件夾執行一個過程(按鈕)。

在后台:當用戶單擊“處理”時,我掃描復選框列表並僅為所選文件夾(“選中的”復選框或“用戶所選的文件夾”)創建一個新列表。

這些文件夾的實際過程將在QThread類中循環運行。

挑戰是-我的QThread如何使用主UI方法中的“選定文件夾列表”? 在這一點上,我能夠使之生效的唯一方法是使該列表成為全局參數。 主UI方法將值設置為全局列表,QThread可以讀取該全局列表。

我已經閱讀了有關信號和插槽的所有可能的文檔,並且從Qthread向主UI發送任何想要的東西都沒有問題,但是我找不到關於向線程發送數據的正當解釋。

謝謝。

實際上,我最終得到了一個非常簡單的解決方案。 我在線程對象的新列表中設置了列表。

self.runningProcess = clMyThread()  #This is my thread object
self.runningProcess.ThreadList = self.MainList

self.MainList將是您在UI中獲得的任何列表作為輸入,而ThreadList是線程本身中的相同列表。

因此,當您要對線程運行功能中的列表進行操作時,可以:

for item in self.ThreadList:
    do_something()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM