fix: Step7 UI坍塌修复+EventBus打通 + DRY抽离spxy/ks + GridSearchCV→RandomizedSearchCV + smoke test死链修复

This commit is contained in:
DXC
2026-06-18 11:18:27 +08:00
parent 3ee4e90b31
commit d6c003a211
6 changed files with 201 additions and 450 deletions

View File

@ -27,7 +27,7 @@ from PyQt5.QtCore import Qt
from PyQt5.QtGui import QBrush, QColor, QFont
from PyQt5.QtWidgets import (
QCheckBox, QGroupBox, QHBoxLayout, QLabel, QListWidget,
QListWidgetItem, QMessageBox, QPushButton, QVBoxLayout,
QListWidgetItem, QMessageBox, QPushButton, QSizePolicy, QVBoxLayout,
)
from src.gui.components.custom_widgets import FileSelectWidget
@ -127,6 +127,8 @@ class Step7View(BaseView):
self.formula_list = QListWidget()
self.formula_list.setSelectionMode(QListWidget.MultiSelection)
self.formula_list.setMinimumHeight(300)
self.formula_list.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
# view 层不需要 itemChanged 副作用service 接管时再启用
self.formula_list.blockSignals(True)
formula_outer_layout.addWidget(self.formula_list)
@ -149,7 +151,7 @@ class Step7View(BaseView):
self.run_btn = QPushButton("立即执行计算")
self.run_btn.setStyleSheet(ModernStylesheet.get_button_stylesheet("success"))
self.run_btn.setMinimumHeight(40)
self.run_btn.clicked.connect(self._on_run_clicked)
self.run_btn.clicked.connect(self._on_run_single_clicked)
layout.addWidget(self.run_btn)
layout.addStretch()
@ -316,5 +318,7 @@ class Step7View(BaseView):
# ------------------------------------------------------------------
# 执行入口
# ------------------------------------------------------------------
def _on_run_clicked(self):
self.dispatch_execute("step7", self.get_config())
def _on_run_single_clicked(self):
from src.gui.core.event_bus import global_event_bus
config = self.get_config()
global_event_bus.publish('RequestRunSingleStep', {'step_name': 'step7', 'config': config})