Skip to content

FluentHMI Studio v0.1.0

Choose a tag to compare

@github-actions github-actions released this 27 Oct 08:39
· 49 commits to main since this release

FluentHMI Studio 的第一个版本:PyQt UI Designer 的 C++/Qt 6 重写版,界面基于 FluentQtWidgets。工程格式与 PyQt UI Designer 相同,已有的 .uidp 工程可以直接打开、预览和导出。

  • 拖拽设计:29 种控件,网格吸附、缩放、适应窗口、对齐与等距分布、容器嵌套(水平 / 垂直 / 弹性布局、分组框、卡片、选项卡)。属性和数据绑定在右侧编辑,未选中控件时编辑工程设置。
  • 数据接收与绑定:串口、TCP 客户端 / 服务端、MQTT 三种链路;行文本(键值 / JSON / CSV)、HEX 帧、Modbus RTU、Modbus TCP 四种解析;键值匹配、JSON 路径、HEX 字节提取、Modbus 四种绑定,支持 value * 0.1 这类转换表达式。规则按 Python 版逐条移植并有单元测试。
  • MQTT:自带 MQTT 3.1.1 客户端,支持用户名密码、QoS 0/1/2、+/# 通配符订阅,TLS 使用系统证书库;连接成功后断开会自动重连。每条消息视为一帧,只有一个数值的消息可以直接用主题名绑定。
  • 命令发送:文本、HEX、Modbus 三种模式和 {value} 模板;Modbus 命令按每条链路的解析模式自动组 RTU 帧或 MBAP 帧。
  • 导出应用不再需要编译器:预览和导出的程序使用同一个运行时,导出时复制运行时、写入工程和用到的图片,并以应用名命名。也可以在命令行导出:FluentHMIStudio --export <目录> <工程.uidp>。
  • 在线更新:设置页有"检查更新"按钮和"启动时检查更新"开关(默认开启),启动检查只在有新版本时弹窗。发现新版本时显示更新说明;立即更新会下载本平台的安装包并用 SHA-256 校验,之后点"重启并更新",或者稍后退出 Studio 时自动换成新版本;换不上时保留原来的版本,下次启动时提示原因。没有写入安装目录的权限(例如装在 Program Files)或 macOS 从隔离的临时位置运行时,改为打开下载页,所以在 macOS 上请先把应用移到"应用程序"文件夹。命令行可以用 FluentHMIStudio --update 更新。
  • 浅色 / 深色 / 跟随系统主题,所有滚动条为 Fluent 样式。

提供 Windows x64 和 macOS universal(Apple Silicon 与 Intel 通用)独立运行包及 SHA-256 校验文件。解压后运行 FluentHMIStudio.exe 或 FluentHMI Studio.app,无需另装 Qt。包里只有一份 Qt:macOS 上放在 FluentHMI Studio.app/Contents/Helpers/FluentHMIRuntime.app 里,Windows 上 FluentHMIStudio.exe 和 FluentHMIRuntime.exe 在同一目录、共用 Qt DLL;导出的应用复制运行器及其 Qt,可以直接拷到别的电脑上运行。每个包在发布前都会用打包好的 Studio 导出示例工程,并启动导出的程序做自检;macOS 包还会确认 Studio 和导出的程序只加载系统库和包内的库。

Mac 安装包只做了 ad hoc 签名,未做 Apple Developer ID 签名与公证,第一次打开需要在"系统设置 → 隐私与安全性"中点"仍要打开";Windows 安装包未做 Authenticode 签名,SmartScreen 提示时点"更多信息 → 仍要运行"。TCP 与 MQTT 使用本机模拟设备和测试内置的 broker 验证;连接真实 MQTT broker(包括 TLS)和实际硬件仍需联调。