QObject e QThread: criando o "Worker"

This commit is contained in:
Luiz Otávio
2023-03-11 10:21:59 -03:00
parent 09bfb032eb
commit d81f98ce29

View File

@@ -1,14 +1,43 @@
import sys
import time
from PySide6.QtCore import QObject, Signal, Slot
from PySide6.QtWidgets import QApplication, QWidget
from ui_workerui import Ui_myWidget
class Worker1(QObject):
started = Signal(str)
progressed = Signal(str)
finished = Signal(str)
def run(self):
value = '0'
self.started.emit(value)
for i in range(5):
value = str(i)
self.progressed.emit(value)
time.sleep(1)
self.finished.emit(value)
class MyWidget(QWidget, Ui_myWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.setupUi(self)
self.button1.clicked.connect(self.hardWork1)
self.button2.clicked.connect(self.hardWork2)
def hardWork1(self):
self.label1.setText('1 terminado')
def hardWork2(self):
for i in range(5):
print(i)
time.sleep(1)
self.label2.setText('2 terminado')
if __name__ == '__main__':
app = QApplication(sys.argv)