add 视频显示框、调整布局

This commit is contained in:
2025-10-20 18:10:07 +08:00
parent dc038b0c0d
commit afdefbaca6
2 changed files with 270 additions and 8 deletions

View File

@ -10,7 +10,7 @@ from .widgets.hopper_widget import HopperWidget
from .widgets.arc_progress_widget import ArcProgressWidget
from .widgets.production_progress_widget import ProductionProgressWidget
from .widgets.system_button_widget import SystemButtonWidget
from .widgets.vibration_video_widget import VibrationVideoWidget
class MainWindow(QWidget):
def __init__(self):
@ -20,8 +20,6 @@ class MainWindow(QWidget):
self.setupLayout() # 设置布局
self.connectSignalToSlot()
def connectSignalToSlot(self):
# 可添加信号槽连接
self.system_button_widget.buttons["系统启动"].clicked.connect(self.handleSystemStart)
@ -53,6 +51,7 @@ class MainWindow(QWidget):
self.arc_progress = ArcProgressWidget() # 中间2弧形进度部件
self.production_progress = ProductionProgressWidget() # 生产进度部件
self.system_button_widget = SystemButtonWidget() # 系统控制按钮
self.vibration_video = VibrationVideoWidget() # 振捣视频控件
def setupLayout(self):
"""设置垂直布局,从上到下排列部件"""
@ -61,12 +60,24 @@ class MainWindow(QWidget):
main_layout.setSpacing(0) # 部件间距0px
main_layout.setContentsMargins(15, 15, 15, 15) # 上下左右边距15px
sub_v_layout = QVBoxLayout()
sub_v_layout.setSpacing(0)
# 依次添加部件到布局(从上到下)
main_layout.addWidget(self.status_monitor, alignment=Qt.AlignHCenter)
main_layout.addWidget(self.hopper_widget, alignment=Qt.AlignHCenter)
main_layout.addWidget(self.arc_progress, alignment=Qt.AlignHCenter)
main_layout.addWidget(self.production_progress, alignment=Qt.AlignHCenter)
main_layout.addWidget(self.system_button_widget, alignment=Qt.AlignHCenter)
# sub_v_layout.addWidget(self.status_monitor, alignment=Qt.AlignHCenter)
sub_v_layout.addWidget(self.hopper_widget, alignment=Qt.AlignHCenter)
sub_v_layout.addWidget(self.arc_progress, alignment=Qt.AlignHCenter)
sub_v_layout.addWidget(self.production_progress, alignment=Qt.AlignHCenter)
# sub_v_layout.addWidget(self.system_button_widget, alignment=Qt.AlignHCenter)
middle_h_layout = QHBoxLayout()
middle_h_layout.setSpacing(20)
# 加入垂直子布局设置拉伸因子1让其占满水平剩余空间
middle_h_layout.addLayout(sub_v_layout, stretch=1)
# 加入振捣视频控件(对齐方式为顶部)
middle_h_layout.addWidget(self.vibration_video, alignment=Qt.AlignTop)
# === 添加到著布局
main_layout.addLayout(middle_h_layout)
# 将布局应用到主窗口
self.setLayout(main_layout)