GUI 插件开发指导
- 以前可视柜台启动界面由实体单独管理,改动范围仅在实体层,现在启动界面由SpShell生成渲染
- 为了让大家能添加自己的交互界面,而不涉及到框架改动,框架添加了动态加载子窗口界面的功能,以扩展应用的业务功能
- 该功能使用了QT Plugin的机制,所以开发流程需要按照QT的方式实施
开发指引
工程创建
- 在Plugins文件夹下创建自己的窗口库CMake工程,要求输出的是动态库(
.so
或.dll
)
- 继承 Plugins/include/CustomImportInterface.h 中的类:
CustomImportInterface
,并先声明实现相关的纯虚成员函数
- 输出目录为终端的*bin/plugins*文件夹
转移战场,设计窗口类
- 先使用QtCreator以
QWidget
控件设计和开发相关的功能,记住是QWidget
,因为接口限定提取出来的是该类型
- 将实现的
QWidget
类和相关的其他实现文件(如有)迁移到先前建立的Plugin工程下
- 实现
CustomImportInterface
的getComponent
接口返回该QWidget
类的对象指针
输出运行
- 编译Plugins工程并运行框架
- 查看 工具 -> 选项 中,在*自定义*菜单选项的子菜单下查看是否该新控件选项,点击看右侧的实现效果