本页面详细介绍了 Shadowsocks Windows 客户端的用户界面组件,解释了用户如何与应用程序交互以及 UI 如何与核心系统集成。有关底层代理功能的信息,请参阅 网络 和 代理服务。
Shadowsocks Windows 客户端采用极简 UI 方法,主要围绕系统托盘图标和用于大多数控件的上下文菜单,并辅以几个用于详细设置的配置窗口。UI 层通过基于事件的系统与核心 ShadowsocksController 进行通信。
来源
MenuViewController 类充当所有 UI 交互的协调器。它
来源
系统托盘图标是用户交互的主要界面元素。它提供了
图标的外观由以下因素决定:
来源
上下文菜单提供对所有 Shadowsocks 功能的访问,并按逻辑分组
来源
ConfigForm 提供了一个详细的界面来管理服务器配置
配置窗体处理以下功能:
来源
来源
UI 通过基于事件的机制响应底层系统的变化。ShadowsocksController 触发事件,MenuViewController 订阅这些事件。
| 事件 | 描述 | UI 响应 |
|---|---|---|
| ConfigChanged | 配置已修改 | 更新托盘图标、服务器列表、菜单复选框 |
| EnableStatusChanged | 代理已启用/禁用 | 更新菜单复选框、托盘图标 |
| EnableGlobalChanged | 全局模式已切换 | 更新菜单复选框、托盘图标 |
| ShareOverLANStatusChanged | 局域网共享已切换 | 更新菜单复选框 |
| VerboseLoggingStatusChanged | 详细日志记录已切换 | 更新菜单复选框 |
| ShowPluginOutputChanged | 插件输出可见性已切换 | 更新菜单复选框 |
| TrafficChanged | 流量统计已更新 | 更新托盘图标叠加层 |
| PACFileReadyToOpen | PAC 文件已准备好进行编辑 | 在默认编辑器中打开文件 |
| UserRuleFileReadyToOpen | 用户规则文件已准备好进行编辑 | 在默认编辑器中打开文件 |
| Errored | 控制器中发生错误 | 显示错误消息框 |
来源
服务器共享窗口允许用户:
二维码扫描功能
快捷键配置窗口允许用户:
在线配置窗口支持:
来源
UI 提供用于管理 Windows 系统代理设置的控件
切换时,这些选项会调用相应的控制器方法来更新系统代理设置。
“开机启动”选项将应用程序注册/取消注册到 Windows 启动项
“关联 ss:// 链接”选项
来源
系统通过以下方式提供网络流量的视觉反馈:
托盘图标可视化逻辑
来源
UI 集成了更新检查功能
来源
这个 UI 系统提供了一个干净、极简的界面,有效展示了 Shadowsocks 代理的强大功能,使其易于用户使用,同时在正常运行时保持不显眼。