Qt跨平台数字化压力测量分析监控系统的设计与实现
5.2 淡入淡出效果
当窗体进行页面切换时,原页面的消失和新页面的显示并不是瞬间切换的,而是逐渐消隐和逐渐显现的过程。本文引用地址:http://www.amcfsurvey.com/article/193643.htm
本应用程序中实现的fader类就是用于实现这种效果,在响应页面切换时,新建一个窗体,此窗体是一个与对话框等尺寸的空白窗体,此窗体由透明逐渐变成不透明就完成了淡入淡出的效果,如图4所示。
6 Qt串口通信
在Qt中没有特定的串口控制类,采用第三方写的qextserialport类如图5,文件中包含QextSerialBase类,Win_QextSerialPort类,Pos ix_QextSerialPort类,QextSeralPort是所有类的子类,是最高的抽象,它屏蔽了平台特征,使得在任何平台上都可以使用。
对于串口的读取方式有Polling模式即查询模式还有EventDriven事件驱动模式。
事件驱动方式就是使用处理串口的读取,一旦有数据到来就会发出readyRead()信号,设计者可以关联该信号来读取串口数据。在事件驱动的方式下,串口的读写是异步的调用读写函数会立即返回,它们不会冻结调用线程。
而查询方式则不同,读写函数是同步执行,信号不能工作在这种模式下,但这种模式下开销小,需要自己建立定时器来读取串口数据。
Windows下可以使用两种方式而在Linux下只能使用查询Polling方式。
7 结束语
本软件测试系统界面直观、友好,数据存储方便,分组存储更能方便学生记录数据。软件能后满足实验室的测量要求,并且省去了繁琐的数据记录、处理的过程。学生可以更直观地观测压力的变化。在通信协议不变的条件下,软件和硬件平台可以分别进行改进、扩展,使其更加完善。应用程序的跨平台性,可以完美运行于各种操作系统,从Windows到Mac OS,从Linux到Unix及一些嵌入式系统上。
评论