При тестировании на windows и kali всё работало корректно. Смена фона происходит по нажатию кнопки. В чем суть работы программы сначала отображается сообщение о том что входить нельзя и подсвчивается красным, а при переключении зеленым и сменятся надпись, но при возвращении в первое состояние заливка фона происходит некорректно.
1.
2.
3. (Ошибочное отображение)
from pynput import mouse
from PyQt5 import QtWidgets, uic, QtGui, QtCore
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton
from PyQt5.QtCore import pyqtSlot
import sys
app = QtWidgets.QApplication([])
class MainWindow(QMainWindow):
state = 1
def __init__(self):
QMainWindow.__init__(self)
uic.loadUi('QueueControlScoreboard.ui', self)
self.label.resize(800, 600)
self.label.setMinimumSize(1, 1)
def resizeEvent(self, event):
self.label.resize(self.width(), self.height())
# переключатель состояния главного табло
def BoardChangeState(self, id = 0):
if(id == 0):
self.label.setText("ЗАХОДЬТЕ!")
self.setStyleSheet("background-color: lime;")
elif(id == 1):
self.label.setText("ЗАЧЕКАЙТЕ!")
self.setStyleSheet("background-color: red;")
main_window = MainWindow()
#функционал кнопки для теста смены состояния
@pyqtSlot()
def btn_click():
if(main_window.state == 1):
main_window.BoardChangeState(0)
main_window.state = 0
else:
main_window.BoardChangeState(1)
main_window.state = 1
main_window.pushButton.clicked.connect(btn_click)
main_window.show()
main_window.resize(800, 600)
sys.exit(app.exec())