Projekt

Obecné

Profil

Stáhnout (970 Bajtů) Statistiky
| Větev: | Tag: | Revize:
1
from PyQt5.QtCore import QSize, QThread
2
from PyQt5.QtWidgets import QMainWindow, QPlainTextEdit
3

    
4
from aswi2021vochomurka.service.mqtt.mqtt_subscriber import MQTTSubscriber
5

    
6

    
7
class MainView(QMainWindow):
8
    worker = None
9
    workerThread = None
10

    
11
    def __init__(self):
12
        QMainWindow.__init__(self)
13

    
14
        self.setMinimumSize(QSize(440, 240))
15
        self.setWindowTitle("MQTT demo")
16

    
17
        # Add text field
18
        self.b = QPlainTextEdit(self)
19
        self.b.insertPlainText("App started...\n")
20
        self.b.move(10, 10)
21
        self.b.resize(400, 200)
22

    
23
        self.initSubscriber()
24

    
25
    def initSubscriber(self):
26
        self.workerThread = QThread()
27
        self.worker = MQTTSubscriber()
28
        self.worker.moveToThread(self.workerThread)
29
        self.workerThread.started.connect(self.worker.start)
30
        self.worker.newMessage.connect(
31
            lambda message: self.b.insertPlainText(message + "\n")
32
        )
33
        self.workerThread.start()
(2-2/2)