feat: 增强电缆数据校验和UI优化

This commit is contained in:
dmy
2026-01-04 19:11:45 +08:00
parent a42a8ec7f1
commit 2ec763b86a
2 changed files with 48 additions and 7 deletions

12
gui.py
View File

@@ -379,10 +379,11 @@ def index():
refs["status_label"].text = "准备开始计算..."
except queue.Empty:
break
if new_msg:
# 强制日志框滚动到最底部,确保最后一行可见
if new_msg and refs["log_box"]:
# 使用 JS 直接滚动 log 元素到最底部
# 增加一个小延时确保内容渲染完成
ui.run_javascript(
'const el = document.querySelector(".analysis-log-box"); if (el) { el.scrollTop = el.scrollHeight; }'
f'var el = document.getElementById("c{refs["log_box"].id}"); if(el) {{ setTimeout(() => {{ el.scrollTop = el.scrollHeight; }}, 10); }}'
)
log_timer = ui.timer(0.1, process_log_queue)
@@ -500,13 +501,14 @@ def index():
with ui.expansion("查看实时日志", icon="terminal", value=True).classes(
"w-full mt-4 text-sm"
):
# 直接控制 log 组件的样式和滚动,去除 scroll_area 中间层
refs["log_box"] = ui.log(max_lines=100).classes(
"w-full h-32 text-xs font-mono bg-black text-green-400 analysis-log-box"
"w-full h-32 overflow-y-auto p-2 bg-black text-xs font-mono text-green-400 leading-snug"
)
processing_dialog.props("persistent")
with ui.header().classes("bg-primary text-white p-4 shadow-lg"):
ui.label("海上风电场集电线路设计优化系统").classes("text-2xl font-bold")
ui.label("海上风电场集电线路设计优化系统 v1.0").classes("text-2xl font-bold")
ui.label("Wind Farm Collector System Design Optimizer").classes(
"text-sm opacity-80"
)