# coding: gb2312 from PyQt5.QtWidgets import * from PyQt5.QtCore import Qt, QSize from BaseFrontend.based_widget import BasedWidget from LSZXPagesManagerLibrary.display_circular_running_table import CircularRunningTable from LSZXPagesManagerLibrary.display_convention import ConventionBox from LSZXPagesManagerLibrary.display_grade_summary import GradeSummary from LSZXPagesManagerLibrary.display_first import DisplayTopOne class DisplayPageWidgetDefine(BasedWidget): def __init__(self): super().__init__() # 定义控件(按Ctrl+点击快速跳转编辑) """**布局对象初始化区**布局对象初始化区**布局对象初始化区**布局对象初始化区**布局对象初始化区**布局对象初始化区""" self.all_widget = self._init_all_widget() # 顶部widget,用于设置背景图片 self.top_widget = self._init_top_widget() self.back_button = self._init_back_button() self.title_widget = self._init_title_widget() self.timer_widget = self._init_timer_widget() self.sqm_box_widget = self._init_sqm_box_widget() self.sqm_title_widget = self._init_sqm_title_widget() self.running_widget = self._init_running_widget() self.running_stacked_widget = self.init_running_stacked_widget() self.sit_up_widget = ConventionBox() self.pull_up_widget = ConventionBox() self.run_bf_widget = ConventionBox() self.push_up_widget = ConventionBox() self.top_one_widget = DisplayTopOne() self.grade_summary_widget = GradeSummary() self.sqm_widget = CircularRunningTable() # 初始化空白控件 @staticmethod def init_empty_widget(): empty_label = QLabel('暂无数据') empty_label.setAlignment(Qt.AlignCenter) empty_label.setStyleSheet( "color: #ffffff;" "font: 20px \"Microsoft YaHei UI\";" "margin-bottom: 20px;" "background: transparent;" "border: none;" "border-image: none;" ) return empty_label @staticmethod def _init_all_widget(): all_widget = QWidget() all_widget.setStyleSheet( "background-color: #02004d;" "background-image: url(assets/background.png);" "background-size: contain;" "background-repeat: no-repeat;" "background-position: center;" ) return all_widget @staticmethod def _init_top_widget(): top_widget = QWidget() top_widget.setStyleSheet( "background-image: url(assets/bg_top.png);" "background-size: contain;" "background-repeat: no-repeat;" "background-position: center;" "background-color: none;" ) return top_widget @staticmethod def _init_back_button(): back_button = QPushButton('<返回') back_button.setStyleSheet( "color: #ffffff;" "font: 600 24px \"Microsoft YaHei UI\";" "background: none;" "margin-left: 20px;" "letter-spacing: 4px;" "background: transparent;" "border: none;" ) return back_button @staticmethod def _init_title_widget(): title_widget = QLabel('"砺戍"智能考评系统') title_widget.setAlignment(Qt.AlignCenter | Qt.AlignVCenter) title_widget.setStyleSheet( "color: #ffffff;" "font: 600 34px \"Microsoft YaHei UI\";" "background: none;" "letter-spacing: 12px;" "background-color: none;" ) return title_widget @staticmethod def _init_timer_widget(): timer_widget = QLabel('2024年12月11日 11:32:36') timer_widget.setAlignment(Qt.AlignRight | Qt.AlignVCenter) timer_widget.setStyleSheet( "color: #00d8ff;" "font: 600 28px \"Microsoft YaHei UI\";" "background: none;" "padding-right: 10px;" "background-color: none;" ) return timer_widget @staticmethod def _init_sqm_box_widget(): sqm_box_widget = QWidget() sqm_box_widget.setStyleSheet( "border-image: url(assets/bg_sqm.png);" "background-size: contain;" "background-repeat: no-repeat;" "background-position: center;" "background: none;" "border: none;" "background-color: none;" "margin: 6px;" ) return sqm_box_widget @staticmethod def _init_sqm_title_widget(): sqm_title_widget = QLabel("长跑") sqm_title_widget.setAlignment(Qt.AlignCenter) sqm_title_widget.setStyleSheet( "font: 600 24px \"Microsoft YaHei UI\";" "color: #fdbb03;" "background: transparent;" "border: none;" "border-image: none;" "margin: 0px" ) return sqm_title_widget @staticmethod def _init_running_widget(): running_widget = QWidget() running_widget.setStyleSheet( "background: transparent;" "border: none;" "border-image: none;" ) return running_widget @staticmethod def init_running_stacked_widget(): running_stacked_widget = QStackedWidget() running_stacked_widget.setStyleSheet( "background: transparent;" "border: none;" "border-image: none;" ) return running_stacked_widget