38 lines
1.3 KiB
Python
38 lines
1.3 KiB
Python
from PyQt5.QtWidgets import QWidget, QLabel, QVBoxLayout, QApplication
|
|
from PyQt5.QtCore import QTimer, Qt
|
|
|
|
class Status(QWidget):
|
|
def __init__(self, status):
|
|
super().__init__()
|
|
|
|
self.status = status
|
|
|
|
# Инициализация пользовательского интерфейса
|
|
self.initUI()
|
|
|
|
# Таймер для обновления статуса
|
|
self.timer = QTimer(self)
|
|
self.timer.timeout.connect(self.updateStatus)
|
|
self.timer.start(1000) # Обновление каждые 1000 мс (1 секунда)
|
|
|
|
def initUI(self):
|
|
self.layout = QVBoxLayout()
|
|
|
|
# Создание метки для отображения статуса
|
|
self.statusLabel = QLabel(self.status())
|
|
self.layout.addWidget(self.statusLabel)
|
|
|
|
self.setLayout(self.layout)
|
|
self.setFixedHeight(100)
|
|
|
|
def paintEvent(self, event):
|
|
# Установка цвета фона
|
|
self.setAutoFillBackground(True)
|
|
p = self.palette()
|
|
p.setColor(self.backgroundRole(), Qt.lightGray)
|
|
self.setPalette(p)
|
|
|
|
def updateStatus(self):
|
|
# Обновление текста метки статуса
|
|
self.statusLabel.setText(self.status())
|