# 桌面页面与交互结构 > V1 是单窗口 PyQt5 桌面应用,没有 Web 路由。主窗口使用顶部水平双 Tab;V2 选择本地网页壳或桌面壳时必须保持同等用户流程。 ## 页面 / 视图 | 视图 | MVP 职责 | | --- | --- | | 实时监控 | 选择本地安全配置、开始/停止流、显示视频、骨架、ID、状态、连接质量和 FPS。 | | 设置面板 | 显示非敏感配置值,保存前校验;不得显示真实 RTSP 密码。 | | 摔倒弹窗 | 仅首次 `fall.confirmed` 时显示人员 ID、确认时间、截图路径和确认按钮。 | | 事件提示区 | 显示最近事件和截图保存结果;V1 不做长期历史数据库。 | | 连接错误提示 | 显示断流或配置错误以及可重试状态;不得使用“正常”掩盖错误。 | ## 顶层导航 顶部 Tab 只有两个固定目的地:实时监控和设置。默认进入实时监控,因为客户演示的主任务是看见画面与报警闭环。使用顶部 Tab 而非左侧导航,避免在 V1 的单路 16:9 视频旁占用横向空间;只有后续增加回放、诊断、设备管理等多个稳定模块时才评估左侧导航。 - 实时监控 Tab:视频、姿态、人员状态、事件证据、最近事件和报警弹窗。 - 设置 Tab:来源就绪状态、模型只读信息、事件时间窗、质量门槛、重连策略和配置版本。 ## 设置视图 - 来源区域只显示环境变量名称与“已就绪 / 未就绪”,不得显示真实地址、账号或密码。 - 模型区域只读显示模型名称、哈希摘要、关键点格式与验证日期;模型替换不属于演示操作。 - 事件参数使用带单位和范围说明的数字控件:关键点质量阈值、疑似时间、确认时间、恢复时间和冷却时间。 - 配置编辑分为编辑中、已保存待下次启动、正在监控已生效三种文字状态,不能只靠颜色区分。 - 保存与应用操作只写入未跟踪的本地配置;当前运行的事件引擎继续使用开始监控时冻结的配置版本。 ## 视觉主题 - V1 默认使用浅色 Windows 桌面主题:浅灰蓝底、白色卡片和低对比度分隔线;视频画面本身按真实内容显示,不强制深色遮罩。 - 红色只表示已确认的摔倒事件及其对应弹窗和证据,不用于普通主按钮、设置保存、连接异常或常规校验。 - NORMAL 使用绿色,SUSPECT 使用琥珀色,连接异常使用中性灰蓝;每种状态必须同时有文字和图标或形状提示。 ## 实时监控视图 - 绿色:`NORMAL`。 - 黄色:`SUSPECT`。 - 红色:`CONFIRMED`。 - 灰色:无人员、低质量或视频源不可用;必须附带原因文字。 - 每个可见人员显示稳定 `track_id`、骨架和状态,避免将全画面统一标成摔倒。 - 红色事件持续时维持可视状态,但弹窗和声音只出现一次。 ## 交互规则 1. 点击“开始”前,校验模型文件、配置文件和 RTSP 环境变量。 2. 点击“停止”后,停止视频源、释放模型线程、停止刷新;不删除已保存事件。 3. 修改事件阈值后,UI 显示的值必须是下一次开始监控真正使用的配置版本。 4. 断流时显示错误与重连状态;恢复连接不自动生成摔倒事件。 5. 截图保存失败时,仍保留红色报警并在提示区记录错误。 6. 设置修改不会热改正在运行的事件阈值;操作员保存后可在监控页看到下一次启动将使用的版本。