统一 Activity 浮层 去掉连环成功弹窗
已落地,行为如下:
**统一 Activity 浮层**(`gui/splash.py` → `ActivityOverlay`)
- 校验授权、拉远程配置、启/停服务、打开浏览器、上报等,都走 `_show_activity` / `_hide_activity`
- 文案可原地更新,主窗口在任务期间禁用,无需点「确定」
**去掉连环成功弹窗**
- 授权成功、配置已更新、试用 chrome.exe → 不再弹 information
- 设置页授权成功写在结果标签上,随后直接进入拉取
**仍弹窗引导**
- 授权/拉取失败、RPA 不可达、打开浏览器失败(跳转浏览器设置)、退出确认等

父子系统
父子系统是 Qt 中处理对象(尤其是 widgets)的一种便捷方式。任何继承自 QObject 的对象都可以有父对象和子对象。这种层级结构使很多事情变得方便:
- 当一个对象被销毁时,它的所有子对象也会被销毁。因此,在某些情况下,调用 delete 方法变得可有可无。
- 所有 QObject 对象都有 findChild 和 findChildren 方法,可用于查找给定对象的子对象。
- QWidget 中的子 widget 会自动显示在父 widget 内部。
观察者模式
几乎所有 UI 工具包都具有检测用户操作并响应该操作的机制。有些使用回调函数,有些使用监听器,但基本上,他们都受到了观察者模式的启发.
当一个可观察对象想要通知其他观察者对象其状态发生变化时,可以使用观察者模式。以下是一些具体示例:
- 用户点击了一个按钮,应该显示一个菜单。
- 网页刚刚加载完成,现在需要从该加载好的网页中提取一些信息。
- 用户正在浏览商品列表(例如在应用商店中),并且已经到达列表末尾,因此应该加载更多商品。
观察者模式在 GUI 应用程序中随处可见,并且经常导致一些样板代码。 观察者模式在 GUI 应用程序中随处可见,并且经常导致一些 boilerplate code。Qt 的创建初衷就是为了消除这些重复代码,并提供简洁清晰的语法。信号和插槽机制使这一切成为可能。
信号和插槽
Qt 没有提供可观察对象和观察者,也没有注册它们,而是提供了两个高级概念:信号和插槽。
- 信号 是可以被一个对象发送的消息,通常用于报告状态变化。
- 插槽 是一种接收并响应信号的函数。
信号和插槽的功能
- 一个信号可以连接到多个插槽
- 多个信号可以连接到一个插槽。
- 信号可以与信号连接:这就是信号中继。如果第一个信号已发送,则发送第二个信号。

浙公网安备 33010602011771号