BREW中的屏幕顯示主要是由IDisplay接口實現(xiàn)的,利用IDisplay可以完成書寫文字、畫圖、畫直線以及一些簡單的幾何圖形。如果要想畫一些復(fù)雜的幾何圖形或線,您只好求助于IGraphics 接口了。IDisplay會被所有的應(yīng)用用到,在使用過程中無需我們再顯式的去創(chuàng)建,系統(tǒng)會自動建立它,除非希望實現(xiàn)多顯存處理。IDisplay允許對于設(shè)備的背光燈和Annunciators進行控制,BREW3.x之后,設(shè)備的背光燈可以通過IBacklinght接口多帶帶控制。
BREW中的UI界面控件都派生于IControl接口,其間的關(guān)系如下圖所示。
圖11-1: 基于IControl的顯示控件
?
?
IStatic相當于MFC中的靜態(tài)文本框控件,用于不可編輯的文本/簡單圖像信息的顯示,支持自動換行,支持自動滾屏,也支持支持裝飾屬性的顯示。
IMenuctl是菜單控件。所謂菜單,就應(yīng)該能讓用戶通過按“上”、“下”、“左”、“右”鍵來瀏覽所有可供選擇的菜單選項,并將用戶所選中的選項與別的選項區(qū)分開來。當用戶按“選擇”鍵時,EVT_COMMAND事件就會被發(fā)回給您的應(yīng)用程序的事件處理函數(shù)。IMenuctl支持4種菜單形式:
標準菜單,ClassID為:AEECLSID_MENUCTL
列表菜單,ClassID為: AEECLSID_LISTCTL
軟件菜單,ClassID為:AEECLSID_SOFTKEYCTL
圖標菜單,ClassID為: AEECLSID_ICONVIEWCTL
ITextCtl相當于MFC中的文本文本框,為用戶提供數(shù)據(jù)輸入。文本控件使設(shè)備用戶能夠使用設(shè)備上的按鍵輸入文本字符串。文本控件由可選的標題和矩形窗口組成,窗口包含一行或多行顯示給用戶的輸入文本。文本控件將設(shè)備用戶的按鍵操作轉(zhuǎn)換成字符。應(yīng)用程序只需將按鍵事件傳遞給激活的文本控件,并在設(shè)備用戶完成文本輸入時從該控件獲取文本。轉(zhuǎn)換過程取決于設(shè)備支持的文本輸入模式,例如標準多次按鍵模式(設(shè)備用戶從映射到每個按鍵的字符中選擇)和T9聯(lián)想文本輸入模式。如果支持多種文本輸入模式,應(yīng)用程序可以使設(shè)備用戶在文本控件激活時選擇指定的模式。文本控件允許您指定一個用于此用途的軟鍵菜單。在文本控件激活時,應(yīng)用程序必須通過調(diào)用ITExTCTL_HandieEvent()向它發(fā)送所有按鍵事件。
?