标题:Qt编写气体安全管理系统26-组态设计
作者:liudianwu
日期:2019-12-05 09:37
内容:
一、前言
组态设计是应一个客户要求新增加进去的,设计理念就是在提供一个组态设计的初级功能,比如读取自定义控件动态库,加载所有的控件放到控件栏(有点类似qtcreator的控件栏)用户拖曳对应的控件到画布上,自动生成控件,控件可以直接在画布上拉伸大小和拖动调整位置,设置一些控件本身的属性,比如各种颜色,同时还提供用户属性设置功能,用户可以自定义很多属性绑定在这个控件上,一般来说一个控件会定义一些Q_PROPERTY的东西来讲属性暴露出来进行设置,但是毕竟是有限的,大部分的时候用户希望的是除了这些自带的本身的属性以外,还能自定义一些用户的属性绑定到这个控件上,比如设备编号、设备名称等,而且这些信息要求可以保存的,下次自动加载并且应用进去。
弱属性机制在Qt中异常的强大,这种用户属性的处理必须要用到弱属性,弱属性要读取直接用widget->property(name)即可,要赋值直接widget->setProperty(name, value)即可,使用非常方便,支持多个,如果名字相当值取最后那个,会自动覆盖,所以想设备编号、设备名称这类的用户属性绑定到该控件以后,在程序中其他地方就可以直接用property函数取出来进行处理了。为此我专门做了个自定义控件属性设计器,支持中英文属性自动映射,有专门的一个系列的文章讲解那个属性设计器。
皮肤开源:[https://gitee.com/feiyangqingyun/QWidgetDemo](https://gitee.com/feiyangqingyun/QWidgetDemo) [https://github.com/feiyangqingyun/QWidgetDemo](https://github.com/feiyangqingyun/QWidgetDemo)
文件名称:styledemo
体验地址:[https://gitee.com/feiyangqingyun/QWidgetExe](https://gitee.com/feiyangqingyun/QWidgetExe) [https://github.com/feiyangqingyun/QWidgetExe](https://github.com/feiyangqingyun/QWidgetExe)
文件名称:bin_sams.zip
二、功能特点
1. 采集数据端口,支持串口端口+网络端口,串口支持自由设置串口号+波特率,网络支持自由设置IP地址+通讯端口,每个端口支持采集周期,默认1秒钟一个地址,支持设置通讯超时次数,默认3次,支持最大重连时间,用于重新读取离线的设备。
2. 控制器信息,能够添加控制器名称,选择控制器地址+控制器型号,设置该控制器下面的探测器数量。
3. 探测器信息,能够添加位号,可自由选择探测器型号,气体种类,气体符号,高报值,低报值,缓冲值 ..
#1 [yangzi8000 12-09 14:40]
QT能做这么漂亮的界面。。。。。。。。。。。
#2 [yangzi8000 12-09 15:05]
不开源。、、、、部分开源也行 ,没意思