<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 適用于移動(dòng)終端的GUI設計與實(shí)現

適用于移動(dòng)終端的GUI設計與實(shí)現

作者: 時(shí)間:2009-05-07 來(lái)源:網(wǎng)絡(luò ) 收藏

將某些消息直接發(fā)送給應用程序的窗口函數,而不是將它們放入到應用程序隊列中,這樣的消息稱(chēng)為非排隊消息。通常,非排隊消息是那些僅影響該窗口的消息。雖然大多數消息都由產(chǎn)生,但應用程序也可以產(chǎn)生自己的消息并將其加入到應用程序隊列中。

一旦應用程序的主函數從隊列中獲取了消息,就可以將消息傳送給相關(guān)窗口的窗口函數,并把消息的內容作為參數傳遞過(guò)去,這樣,窗口函數就可以處理這個(gè)消息,完成相應的工作。當窗口函數返回后,將控制權返回給主函數。主函數可以再從隊列中取出下一消息進(jìn)行處理。

2.4 窗口管理
窗口是應用程序的主要輸入輸出設備。應用程序只有通過(guò)窗口才能訪(fǎng)問(wèn)顯示設備。窗口由標題條、菜單條、滾動(dòng)條、邊框以及在顯示設備上的矩形框里出現的其它特性組成。當創(chuàng )建窗口時(shí),可為窗口指定所要求的特性,然后GUI畫(huà)出此窗口并管理它。

雖然應用程序創(chuàng )建了某一窗口,并且從技術(shù)上來(lái)說(shuō)可以獨占它,但該窗口的管理實(shí)際上是由應用程序與GUI相互協(xié)作來(lái)的。GUI管理窗口的位置和顯示方式,并管理窗口的標準特性,如邊框、標題等,同時(shí)完成許多由用戶(hù)初始化并直接影響窗口的任務(wù)。而應用程序則管理窗口的其它所有工作,特別是負責管理窗口的“客戶(hù)區”(窗口邊框以?xún)鹊膮^域)。應用程序可完全控制屬于自己的窗口客戶(hù)區的顯示。

為管理這一協(xié)作任務(wù),GUI告知每個(gè)窗口其變化可能要受到影響。因此,每個(gè)窗口必須具有相應的“窗口函數”,用于接收窗口管理消息。窗口管理消息既可指定該函數要執行的動(dòng)作,也可請求該窗口函數返回信息。

窗口函數作為窗口最重要的基本屬性,處理所有傳送到本窗口的消息。窗口的表現及行為特征是由窗口函數定義的對消息的處理所決定的。在正常情況下,具體的窗口函數只處理部分指定的消息,而正是這部分特定消息的處理決定了各個(gè)窗口的不同特性。通過(guò)調用窗口函數,將消息參數傳遞到所指定的窗口函數,由窗口函數依據消息所攜帶的消息參數進(jìn)行判斷處理。對絕大部分消息只需將其送往缺省窗口函數進(jìn)行處理。缺省窗口函數集成了標準窗口函數對消息的標準處理,是對所有窗口函數的一個(gè)共性集合窗口管理收集所有的輸入信息,然后把這些輸入信息以消息的形式送往合適的窗口。這些消息的執行結果又可能產(chǎn)生新的消息,新消息的傳送仍由窗口管理負責。窗口管理通過(guò)調用窗口函數,向窗口函數傳遞消息參數,把消息送到目的窗口。在中,采用消息分派技術(shù)將協(xié)議棧消息依次發(fā)往所有具有系統屬性的窗口。通過(guò)窗口樹(shù)表將非協(xié)議棧消息送往所獲取的當前焦點(diǎn)窗口。

3. GUI調用流程

下面通過(guò)一個(gè)具體例子分析GUI函數調用流程:的窗口系統初始化時(shí)首先要創(chuàng )建一個(gè)菜單,在注冊菜單窗口類(lèi)時(shí)將菜單序號圖片全部按順序讀入內存,這就需要GDI用畫(huà)刷對象來(lái)進(jìn)行矩形填充,下圖清晰的顯示了GUI在注冊這個(gè)窗口類(lèi)時(shí)各層調用的流程。

圖4. GUI調用流程

4. 結語(yǔ)

GUI系統是一項復雜的工程,本文的GUI占用資源少、可配置,特別終端。它給終端上層應用提供了一個(gè)清晰的圖形界面。同時(shí),在將它用于多種終端平臺時(shí)還要盡可能考慮它的可擴展性、兼容性、可移植性等屬性。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>