82 lines
4.0 KiB
Python
82 lines
4.0 KiB
Python
# coding: gb2312
|
||
from PyQt5.QtWidgets import *
|
||
|
||
from LSZXPagesLibrary.home_page_widget_define import HomePageWidgetDefine
|
||
|
||
|
||
class HomePageLayoutDefine(HomePageWidgetDefine):
|
||
|
||
def __init__(self):
|
||
super().__init__()
|
||
"""**布局定义**布局定义**布局定义**布局定义**布局定义**布局定义**布局定义**布局定义**布局定义**布局定义**布局定义"""
|
||
# 设置页面主要布局为垂直布局,
|
||
# 第一行为图像、按钮、WiFi,
|
||
self.main_row1 = QHBoxLayout()
|
||
# 第二行为动作标准和动作难度、数据同步、成绩同步、LOGO
|
||
self.main_row2 = QHBoxLayout()
|
||
"""**第一行布局定义**第一行布局定义**第一行布局定义**第一行布局定义**第一行布局定义**第一行布局定义**第一行布局定义"""
|
||
# 增加图像布局
|
||
self.image_layout = QVBoxLayout()
|
||
self.image_layout.addWidget(self.image_widget)
|
||
# 创建6个按钮和WiFi的布局
|
||
# 按钮第一行
|
||
self.row1_button_layout = QHBoxLayout()
|
||
self.row1_button_layout.setContentsMargins(10, 5, 10, 5)
|
||
self.row1_button_layout.addWidget(self.sit_up_widget, 33)
|
||
self.row1_button_layout.addWidget(self.pull_up_widget, 33)
|
||
self.row1_button_layout.addWidget(self.hanging_up_widget, 33)
|
||
# 按钮第二行
|
||
self.row2_button_layout = QHBoxLayout()
|
||
self.row2_button_layout.setContentsMargins(10, 5, 10, 5)
|
||
self.row2_button_layout.addWidget(self.push_up_widget, 33)
|
||
self.row2_button_layout.addWidget(self.runaround_widget, 33)
|
||
self.row2_button_layout.addWidget(self.running_widget, 33)
|
||
# 合并按钮第一行和按钮第二行
|
||
self.button_layout = QVBoxLayout()
|
||
self.button_layout.addLayout(self.row1_button_layout)
|
||
self.button_layout.addLayout(self.row2_button_layout)
|
||
# WiFi侧布局
|
||
self.wifi_layout = QVBoxLayout()
|
||
self.wifi_layout.addWidget(self.empty_box, 15)
|
||
self.wifi_layout.addWidget(self.wifi_stacked_widget, 25)
|
||
self.wifi_layout.addWidget(self.empty_box, 160)
|
||
# 布局定义
|
||
self.main_row1.addLayout(self.image_layout, 19)
|
||
self.main_row1.addLayout(self.button_layout, 66)
|
||
self.main_row1.addLayout(self.wifi_layout, 5)
|
||
self.main_row1.setContentsMargins(20, 10, 20, 10)
|
||
"""**第二行布局定义**第二行布局定义**第二行布局定义**第二行布局定义**第二行布局定义**第二行布局定义**第二行布局定义"""
|
||
# 生成动作和标注的基本布局
|
||
self.title_layout = QVBoxLayout()
|
||
self.title_layout.addWidget(self.standard_title)
|
||
self.title_layout.addWidget(self.difficulty_title)
|
||
self.value_layout = QVBoxLayout()
|
||
self.value_layout.addWidget(self.standard_value)
|
||
self.value_layout.addWidget(self.difficulty_value)
|
||
self.standard_difficulty_layout = QHBoxLayout()
|
||
self.standard_difficulty_layout.addLayout(self.title_layout, 30)
|
||
self.standard_difficulty_layout.addLayout(self.value_layout, 70)
|
||
self.standard_difficulty_layout.setContentsMargins(20, 10, 20, 10)
|
||
# 同步区布局
|
||
self.synchronization_layout = QHBoxLayout()
|
||
self.synchronization_layout.addWidget(self.data_synchronization_button, 48)
|
||
self.synchronization_layout.addWidget(self.empty_box, 4)
|
||
self.synchronization_layout.addWidget(self.score_synchronization_button, 48)
|
||
# logo布局
|
||
self.logo_layout = QHBoxLayout()
|
||
self.logo_layout.setContentsMargins(22, 0, 22, 0)
|
||
self.logo_layout.addWidget(self.logo_label)
|
||
# 布局定义
|
||
self.main_row2.addLayout(self.standard_difficulty_layout, 20) # 占据20%的屏幕宽度
|
||
self.main_row2.addLayout(self.synchronization_layout, 70) # 占据70%的屏幕宽度
|
||
self.main_row2.addLayout(self.logo_layout, 10) # 占据10%的屏幕宽度
|
||
"""**总布局定义**总布局定义**总布局定义**总布局定义**总布局定义**总布局定义**总布局定义**总布局定义**总布局定义"""
|
||
# 总布局定义
|
||
self.layout = QVBoxLayout()
|
||
self.layout.addLayout(self.main_row1, stretch=85) # 设置上容器的高度为85%
|
||
self.layout.addLayout(self.main_row2, stretch=15) # 设置下容器的高度为15%
|
||
self.setLayout(self.layout)
|
||
|
||
|
||
|