实验浏览器 (Browser)

Quatm 主窗口——实验浏览、文件选择、队列管理和多窗口工作区。

概述

Browser 是 Quatm 的主应用程序窗口,基于 QMainWindow + QMdiArea 多文档界面架构。它将文件浏览、实验队列、任务管理和代码编辑整合在统一工作区中。

架构

┌─────────────┬──────────────────────────────────┐
│ FileSelector │       QMdiArea (子窗口区)          │
│ (实验目录树)  │   ┌──────────┬─────────────────┐ │
│             │   │Experiment │  CodeEditor     │ │
├─────────────┤   │Window     │  (实验代码编辑)    │ │
│ ExperimentQ │   └──────────┴─────────────────┘ │
│ (任务队列)    │                                  │
├─────────────┤                                   │
│ PrepStation │                                   │
│ (准备台)     │                                   │
├─────────────┤                                   │
│ Looper      │                                   │
│ (循环器)     │                                   │
└─────────────┴──────────────────────────────────┘

核心组件

组件描述
实验目录FileSelectorexperiments/ 目录树,双击打开实验文件
任务队列ExperimentQ表格化任务列表,支持暂停/终止/删除
任务执行ExperimentManager从队列取出任务并调度执行
准备台PrepStation编辑和预览实验参数后推入队列
循环器Looper根据测量结果条件循环运行
代码编辑CodeEditor基于 QScintilla 的 Python 代码编辑器

启动

from quatm.GUI.browser import Browser

browser = Browser()
browser.show()

或从命令行:

python -m quatm.GUI.browser

窗口持久化

Browser 继承 QMainWindow,通过 QSettings 自动保存和恢复:

  • 主窗口几何位置和大小
  • 已打开的 ExperimentWindow 子窗口及其文件路径