QWS簡介
QWS(QT Windows System)是QT自行開發(fā)的窗口系統(tǒng),體系結(jié)構(gòu)類似X Windows的C/S結(jié)構(gòu)。QWS Server在物理設備上顯示,QWS Client實現(xiàn)界面,兩者通過socket進行彼此的通訊。在很多嵌入式系統(tǒng)里,QT程序基本上都是用QWS來實現(xiàn),這樣保證程序的可移植性。
QWSServer服務端
QT程序沒有嚴格區(qū)分服務端程序和客戶端程序,通知指定-platform參數(shù)來確定程序是客戶端還是服務端程序,對于QWSServer功能主要作為服務端程序統(tǒng)一管理多客戶端鼠標鍵盤事件,以及不同客戶端窗口重疊渲染管理等。
服務端初始化主要流程:
初始化QWSServerSocket網(wǎng)絡,當有客戶端連接接入是會創(chuàng)建對應的QWSClient,來管理客戶端程序事件收發(fā)。
初始化QWSDisplay管理窗口顯示。
初始化QWSCursor管理鼠標鍵盤事件,主要包含兩個主要的類QWSMouseHandler和QWSKeyboardHandler。
QWSDiplay
QWSDiplay主要管理客戶端和服務端網(wǎng)絡事件和請求管理。通過QWSCommand管理窗口操作的一些列請求,通過QWSEvent管理鼠標鍵盤事件等。
QWSClient客戶端
QWSClient在QWS系統(tǒng)中屬于客戶端在服務端的代理對象,服務端通過QWSClient與客戶端交互,完成事件請求交互。
QWSWindow
QWSWindow在QT屬于中間層的概念,它在平臺窗口管理系統(tǒng)中像一個容器,管理QWidget客戶端程序窗口的不同操作,比如窗口的位置大小、窗口是否處于focus狀態(tài)、toplevel widget的管理,QT事件的分發(fā)、以及不同窗口之間的重疊管理。
6. 附錄
圖 6.1 QWS客戶端與服務端交互圖
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。