Qt跨平臺數字化壓力測量分析監控系統的設計與實(shí)現
5.2 淡入淡出效果
當窗體進(jìn)行頁(yè)面切換時(shí),原頁(yè)面的消失和新頁(yè)面的顯示并不是瞬間切換的,而是逐漸消隱和逐漸顯現的過(guò)程。本文引用地址:http://dyxdggzs.com/article/193643.htm
本應用程序中實(shí)現的fader類(lèi)就是用于實(shí)現這種效果,在響應頁(yè)面切換時(shí),新建一個(gè)窗體,此窗體是一個(gè)與對話(huà)框等尺寸的空白窗體,此窗體由透明逐漸變成不透明就完成了淡入淡出的效果,如圖4所示。
6 Qt串口通信
在Qt中沒(méi)有特定的串口控制類(lèi),采用第三方寫(xiě)的qextserialport類(lèi)如圖5,文件中包含QextSerialBase類(lèi),Win_QextSerialPort類(lèi),Pos ix_QextSerialPort類(lèi),QextSeralPort是所有類(lèi)的子類(lèi),是最高的抽象,它屏蔽了平臺特征,使得在任何平臺上都可以使用。
對于串口的讀取方式有Polling模式即查詢(xún)模式還有EventDriven事件驅動(dòng)模式。
事件驅動(dòng)方式就是使用處理串口的讀取,一旦有數據到來(lái)就會(huì )發(fā)出readyRead()信號,設計者可以關(guān)聯(lián)該信號來(lái)讀取串口數據。在事件驅動(dòng)的方式下,串口的讀寫(xiě)是異步的調用讀寫(xiě)函數會(huì )立即返回,它們不會(huì )凍結調用線(xiàn)程。
而查詢(xún)方式則不同,讀寫(xiě)函數是同步執行,信號不能工作在這種模式下,但這種模式下開(kāi)銷(xiāo)小,需要自己建立定時(shí)器來(lái)讀取串口數據。
Windows下可以使用兩種方式而在Linux下只能使用查詢(xún)Polling方式。
7 結束語(yǔ)
本軟件測試系統界面直觀(guān)、友好,數據存儲方便,分組存儲更能方便學(xué)生記錄數據。軟件能后滿(mǎn)足實(shí)驗室的測量要求,并且省去了繁瑣的數據記錄、處理的過(guò)程。學(xué)生可以更直觀(guān)地觀(guān)測壓力的變化。在通信協(xié)議不變的條件下,軟件和硬件平臺可以分別進(jìn)行改進(jìn)、擴展,使其更加完善。應用程序的跨平臺性,可以完美運行于各種操作系統,從Windows到Mac OS,從Linux到Unix及一些嵌入式系統上。
評論