from PyQt5.QtWidgets import * from PyQt5.QtCore import Qt, QSize from PyQt5.QtGui import QIcon class WifiComponent(QWidget): def __init__(self): super().__init__() self.wifi_widget = self.init_wifi_widget() self.wifi_disconnect_widget = self.init_wifi_disconnect_widget() self.wifi_stacked_widget = QStackedWidget() self.wifi_stacked_widget.addWidget(self.wifi_disconnect_widget) self.wifi_stacked_widget.addWidget(self.wifi_widget) self.wifi_layout = QVBoxLayout() self.wifi_layout.addWidget(self.wifi_stacked_widget) # self.wifi_widget = QWidget() # self.wifi_widget.setLayout(self.wifi_layout) self.setLayout(self.wifi_layout) @staticmethod def init_wifi_widget(): wifi_frame = QPushButton() icon = QIcon("assets/wifi.png") wifi_frame.setIconSize(QSize(70, 70)) wifi_frame.setIcon(icon) wifi_frame.setStyleSheet( "background-color: qlineargradient(" "spread: pad," "x1: 0," "y1: 0," "x2: 1," "y2: 1," "stop: 0 rgba(113, 183, 255, 255)," "stop: 1 rgba(79, 149, 224, 255)," "stop: 2 rgba(56, 147, 242, 255));" "border-style: none;" "border-radius: 50%;" "height: 100px;" ) return wifi_frame @staticmethod def init_wifi_disconnect_widget(): wifi_disconnect_widget = QPushButton() icon = QIcon("assets/wifi.png") wifi_disconnect_widget.setIconSize(QSize(70, 70)) wifi_disconnect_widget.setIcon(icon) wifi_disconnect_widget.setStyleSheet( "background-color: #c2c2c3;" "border-style: none;" "border-radius: 50%;" "height: 100px;" ) return wifi_disconnect_widget