我知道如何将信号从工作线程发送回主 GUI 线程,但是如何将信号从主线程发送到工作线程呢?
这是一些示例代码,其中包括信号和槽。这里我将信号发送回主线程,但是我怎样才能向相反的方向发送信号呢?
这里的目标是当我希望线程停止时发送信号以将 self.do 的值更改为 0。
这是主文件,我将把 UI 文件放在下面
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QMainWindow
from PyQt5.QtCore import QThread, QObject, pyqtSignal, pyqtSlot
from progressUI import Ui_Form
import sys
import time
class ProgressBar(QObject):
progress = pyqtSignal(int)
kill = pyqtSignal()
def __init__(self, timer, parent=None):
super(ProgressBar, self).__init__(parent)
self.time = timer
self.do = 1
def work(self):
while self.do == 1:
y = 0
for _ in range(100):
time.sleep(.1)
y += 1
self.progress.emit(y)
break
self.kill.emit()
@pyqtSlot(str)
def worker_slot(self, sentence):
print(sentence)
class …Run Code Online (Sandbox Code Playgroud) 我正在Windows 10上使用pyinstaller使onefile可执行文件。我正在通过编辑.spec文件来包含数据文件(修补文件)...
如何在运行时存储对这些文件所做的更改?我的理解是在执行过程中将数据文件复制到临时目录。我可以使用从sys._MEIPASS获取的路径读取文件,但是重新启动程序后丢失的写入内容将丢失。
有没有办法写存储在exe文件中的pickle文件?