版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第四章 高級用戶界面2019-03電子科技大學科園培訓機構本章主要內容 LCDUI包的體系構造包的體系構造 LCDUI事件機制事件機制 LCDUI的高級的高級API電子科技大學科園培訓機構LCDUI簡介 為何用戶界面不采用為何用戶界面不采用AWT或或SWING AWT或或SWING是針對桌面計算機的硬件條件是針對桌面計算機的硬件條件做的優(yōu)化,挪動通訊設備不適用。做的優(yōu)化,挪動通訊設備不適用。 AWT或或SWING是針對運用鼠標作為輸入方式是針對運用鼠標作為輸入方式的設備而設計的,但普通的挪動通訊設備沒的設備而設計的,但普通的挪動通訊設備沒有鼠標。有鼠標。 AWT或或SWING支持窗口管理功能,
2、而挪動通支持窗口管理功能,而挪動通訊設備上不需求。訊設備上不需求。 AWT或或SWING采用的音訊處置機制會在程序采用的音訊處置機制會在程序執(zhí)行時產(chǎn)生很多的執(zhí)行時產(chǎn)生很多的Event對象,這樣會給內存對象,這樣會給內存和處置才干有限的挪動通訊設備帶來繁重的和處置才干有限的挪動通訊設備帶來繁重的負擔。負擔。電子科技大學科園培訓機構LCDUI簡介 軟硬件的交互方式軟硬件的交互方式 不同的挪動通訊設備在輸入方式上不同的挪動通訊設備在輸入方式上能夠會有所差別,但只需編寫的是能夠會有所差別,但只需編寫的是規(guī)范規(guī)范MIDlet運用程序,底層運用程序,底層KVM都都會自動調整對應的。會自動調整對應的。電子科
3、技大學科園培訓機構LCDUI包的設計 LCDUI包分類包分類 高級高級APIScreen的子類的子類 低級低級APICanvas的子類與的子類與Graphics類類 留意留意 由于手機一次只能顯示一個畫面,因此每由于手機一次只能顯示一個畫面,因此每個畫面只能在高級個畫面只能在高級API和低級和低級API之間擇一之間擇一運用。當然在可以在同一個運用。當然在可以在同一個MIDlet中混合中混合運用。運用。電子科技大學科園培訓機構LCDUI包的設計 高級高級API 畫面具有移植性畫面具有移植性 編寫程序比較輕松編寫程序比較輕松 程序員對畫面的掌控才干比較低程序員對畫面的掌控才干比較低 低級低級API
4、 畫面可移植性比較低畫面可移植性比較低 編寫程序相對復雜編寫程序相對復雜 程序員對畫面有完全的掌控才干程序員對畫面有完全的掌控才干電子科技大學科園培訓機構LCDUI包的體系 javax.microedition.lcdui.DisplayableJavax.microedition.lcdui.Canvasjavax.microedition.lcdui.Screen電子科技大學科園培訓機構LCDUI包的詳細構造 DisplayCommandListenerDisplayableTickerCanvasScreenGraphicsImageFont111Command0n電子科技大學科園培訓機
5、構事件處置 MIDPMIDP中的事件處置機制在中的事件處置機制在J2MEJ2ME用戶圖形界用戶圖形界面開發(fā)中具有舉足輕重的位置面開發(fā)中具有舉足輕重的位置 用戶與機器交互時會產(chǎn)惹事件用戶與機器交互時會產(chǎn)惹事件eventevent,MIDPMIDP運用程序根據(jù)事件來決議如何呼應。運用程序根據(jù)事件來決議如何呼應。 回調函數(shù)回調函數(shù) MIDPMIDP中底層偵測到有事件產(chǎn)生時而調用的中底層偵測到有事件產(chǎn)生時而調用的固定接口的方法固定接口的方法電子科技大學科園培訓機構事件處置 MIDP中和用戶界面相關的回調函數(shù)中和用戶界面相關的回調函數(shù) 經(jīng)由經(jīng)由javax.microedition.lcduimand類類
6、 運用運用javax.microedition.lcdui.Canvas類類 在屏幕需求重繪時,在屏幕需求重繪時,Canvas類的類的paint()方法方法被調用被調用 調用調用Display類的類的callSerially()的方法時,會的方法時,會傳入一個實現(xiàn)傳入一個實現(xiàn)Runnable接口的類,其中的接口的類,其中的run()方法會被調用方法會被調用 上述一切與用戶界面相關的回調函數(shù)都是上述一切與用戶界面相關的回調函數(shù)都是順序執(zhí)行的,它們由同一個線程控制,不順序執(zhí)行的,它們由同一個線程控制,不會并行執(zhí)行。會并行執(zhí)行。電子科技大學科園培訓機構Command類 javax.microedit
7、ion.lcduimand 作用:類似于普通運用程序的系統(tǒng)菜單項作用:類似于普通運用程序的系統(tǒng)菜單項 Command類適用于高級類適用于高級API和低級和低級API電子科技大學科園培訓機構Command類 例如程序例如程序定義Command添加Command到Displayable類的子類對象里面移除Command電子科技大學科園培訓機構Command類 執(zhí)行結果執(zhí)行結果電子科技大學科園培訓機構Command類構造函數(shù) 三個參數(shù)的構造函數(shù)三個參數(shù)的構造函數(shù) Command c1 = new Command(“Back_1, Command.Back, 2) “Back_1 : 顯示在畫面上的稱
8、號顯示在畫面上的稱號 Command.Back : 命令類型命令類型 2 : 優(yōu)先權,號碼越低優(yōu)先權越高,優(yōu)先權越高優(yōu)先權,號碼越低優(yōu)先權越高,優(yōu)先權越高代表用戶越容易找到它代表用戶越容易找到它 四個參數(shù)的構造函數(shù)四個參數(shù)的構造函數(shù) Command c1 = new Command(“短命令短命令, “長命長命令令 , Command.Back, 2)電子科技大學科園培訓機構Command類構造函數(shù) Command的類型的類型 Command.BACK Command.CANCEL Command.EXIT Command.Help Command.ITEM Command.OK Comman
9、d.SCREEN Command.STOP Command并不會由于設定成某一種類型就并不會由于設定成某一種類型就具有該類型具有該類型“稱號上的功能稱號上的功能電子科技大學科園培訓機構CommandListener Command必需和必需和CommandListener事件處置事件處置接口一同運用才干反響用戶的動作。接口一同運用才干反響用戶的動作。 高級和低級高級和低級API中都能運用事件處置接口中都能運用事件處置接口電子科技大學科園培訓機構CommandListener DisplayableDisplayable的子類的子類實現(xiàn)了實現(xiàn)了CommandListener接口的類接口的類Com
10、mandListener1.注冊:注冊:SetCommandListener()3.通知:通知:commandAction()2.用戶選定用戶選定電子科技大學科園培訓機構CommandListener 例如例如必需求實現(xiàn)接口中的必需求實現(xiàn)接口中的commandAction籠統(tǒng)方法籠統(tǒng)方法注冊注冊實現(xiàn)了實現(xiàn)了CommandListener接口接口電子科技大學科園培訓機構CommandListener commandAction方法方法 public void commandAction(Command c, Displayable s) 其中的參數(shù):其中的參數(shù): c : 被選定的系統(tǒng)菜單項的援用
11、被選定的系統(tǒng)菜單項的援用 s : 發(fā)惹事件的來源,也就是包含了發(fā)惹事件的來源,也就是包含了Command對象的對象的Form對象的實體,在這里對象的實體,在這里被上轉型為被上轉型為Displayable接口。接口。電子科技大學科園培訓機構Ticker Ticker類的作用類的作用 類似于跑馬燈的類類似于跑馬燈的類 Ticker的運用的運用 一切一切Displayable類的子類都可以參與類的子類都可以參與Ticker。 用用Displayable中的中的setTicker()設定畫面上的設定畫面上的Ticker 用用Displayable中的中的getTicker()獲得畫面內含獲得畫面內含的
12、的Ticker對象對象電子科技大學科園培訓機構Ticker 例如:例如:電子科技大學科園培訓機構Ticker 執(zhí)行結果執(zhí)行結果 開場:開場: 停頓:停頓:電子科技大學科園培訓機構Displayable類 Displayable類作用類作用 Displayable類是一個籠統(tǒng)類,只需是它的子類是一個籠統(tǒng)類,只需是它的子類,都具有能顯示在屏幕上的才干類,都具有能顯示在屏幕上的才干 Displayable類的重要方法類的重要方法 getTicker() : 獲得跑馬燈獲得跑馬燈 setTicker() : 設置跑馬燈設置跑馬燈 getWidth() : 獲得運用程序區(qū)寬度獲得運用程序區(qū)寬度 getH
13、eight() : 獲得運用程序區(qū)高度獲得運用程序區(qū)高度電子科技大學科園培訓機構Screen類及其體系 Screen類體系類體系screenTextBoxAlertFormListAlertTypeGaugeFontChoice電子科技大學科園培訓機構Screen類及其體系 Screen分類分類 Alert、List、TextBox:封裝了比較復:封裝了比較復雜用戶界面的類事先定義好了用戶界雜用戶界面的類事先定義好了用戶界面組件構造,只能單純拿來運用。面組件構造,只能單純拿來運用。 Form:缺省沒有任何用戶界面的組件:缺省沒有任何用戶界面的組件,可以包容,可以包容Item類的子類的容器,以類
14、的子類的容器,以構成更復雜的圖形用戶界面。構成更復雜的圖形用戶界面。電子科技大學科園培訓機構List類 分類分類 Choice.Exclusive:單項選擇:單項選擇 Choice.MULTIPLE:多項選擇:多項選擇 Choice.IMPLICIT:簡易式的單項選擇:簡易式的單項選擇電子科技大學科園培訓機構單項選擇類型的List 例如:例如: List l = new List(“List 測試測試, Choice.EXCLUSIVE); l.append(“香蕉香蕉, null); l.append(“蘋果蘋果, img); l.append(“西瓜西瓜, null); 關于關于Image
15、 運用運用Image之前,必需運用之前,必需運用Image.createImage圖形位置將圖形位置將圖片加載,圖片文件放到圖片加載,圖片文件放到res目錄中。目錄中。要運用絕對途徑要運用絕對途徑/做開頭,在編譯做開頭,在編譯及測試時期,絕對途徑及測試時期,絕對途徑/代表的就代表的就是是res的位置。在執(zhí)行時期,代表的位置。在執(zhí)行時期,代表JAR文件里頭的根目錄。文件里頭的根目錄。電子科技大學科園培訓機構 單項選擇類型的第二種構造函數(shù)單項選擇類型的第二種構造函數(shù)List l = new List(“List 測試測試, Choice.EXCLUSIVE, stringArray, imageA
16、rray); StringArray : 字符串數(shù)組,各個選項的稱字符串數(shù)組,各個選項的稱號號 imageArray : 各個選項的圖標,傳入各個選項的圖標,傳入NULL即為不顯示圖標即為不顯示圖標單項選擇類型的List電子科技大學科園培訓機構單項選擇類型的List 幾個關鍵的方法幾個關鍵的方法 單項選擇類型的單項選擇類型的List并不會在用戶選擇之并不會在用戶選擇之后立刻引發(fā)事件。后立刻引發(fā)事件。 getSelectedIndex(int arg) 取到目前被選取取到目前被選取的工程的索引值。的工程的索引值。 getString(int arg)獲得目前被選取的工程獲得目前被選取的工程的內容
17、稱號。的內容稱號。電子科技大學科園培訓機構多項選擇類型的List 例如:例如: List l = new List(“List 測試測試, Choice.MULTIPLE); l.append(“香蕉香蕉, null); l.append(“蘋果蘋果, null); l.append(“西瓜西瓜, null);選擇后的處置事件選擇后的處置事件與與Command連用連用電子科技大學科園培訓機構多項選擇類型的List 一些重要方法一些重要方法 size() List中有多少選項中有多少選項 isSelected(int args) 判別某個工程能否被選中判別某個工程能否被選中 getSelecte
18、dFlags(boolean args) 傳入一個傳入一個boolean數(shù)組,假設某選項被選中數(shù)組,假設某選項被選中那么相應標號的數(shù)組元素在方法調用后為那么相應標號的數(shù)組元素在方法調用后為true,否那么為否那么為false電子科技大學科園培訓機構簡易式單項選擇類型的List 構造函數(shù)的第二個參數(shù)改為構造函數(shù)的第二個參數(shù)改為Choice.IMPLICIT電子科技大學科園培訓機構簡易式單項選擇類型的List 事件觸發(fā)事件觸發(fā) Choice.IMPLICIT類型的類型的List會在用戶選擇之后會在用戶選擇之后立刻引發(fā)事件,并將立刻引發(fā)事件,并將List.SELECT_COMMAND經(jīng)過經(jīng)過comm
19、andAction()函數(shù)的第一個參數(shù)傳入函數(shù)的第一個參數(shù)傳入 public void commandAction(Command c, Displayable s) /. 電子科技大學科園培訓機構 簡易式的簡易式的List的的setSelectCommand()可以給定另可以給定另外一個外一個Command對象作為參數(shù),代表往后對象作為參數(shù),代表往后IMPLICIT類型的類型的List被用戶選擇之后,傳送被用戶選擇之后,傳送commandAction()作為第一個參數(shù)的對象作為第一個參數(shù)的對象 Command c1 = new Command(“按下按下, Command.OK, 1); l
20、.setSelectCommand(c1); public void CommandAction(Command c, Displayble s) C1作為第一個參數(shù)簡易式單項選擇類型的List電子科技大學科園培訓機構Fit Policy機制 假設假設list中的某項內容字數(shù)太多以致于屏幕上不中的某項內容字數(shù)太多以致于屏幕上不能一行顯示完,能一行顯示完,MIDlet會怎樣處置呢?會怎樣處置呢? list.setFitPolicy(Choice.TEXT_WRAP_ON) 過長的文字會自動編排到下一行過長的文字會自動編排到下一行 list.setFitPolicy(Choice.TEXT_WRA
21、P_OFF) 過長的文字會自動被截斷過長的文字會自動被截斷 list.setFitPolicy(Choice.TEXT_WRAP_DEFAULT) 根根據(jù)廠家默許來選擇據(jù)廠家默許來選擇電子科技大學科園培訓機構Fit Policy機制 效果:效果:TEXT_WRAP_ONTEXT_WRAP_OFF電子科技大學科園培訓機構TextBox類 TextBox構造函數(shù)構造函數(shù) public TextBox(String title, String text, int maxSize, int Constraints) title:TextBox標題標題 text:TextBox的初始內容的初始內容 ma
22、xSize:允許輸入的字符的最大長度。不:允許輸入的字符的最大長度。不能超越設備本身所限制的最大值能超越設備本身所限制的最大值 Constraints:限制類型:限制類型電子科技大學科園培訓機構TextBox類 異常異常:IllegalArgumentationException 假設假設maxSize為零或負數(shù)為零或負數(shù) 假設假設Constraints非法非法 假設假設text與指定的與指定的Constraints不符不符 假設假設text長度超越長度超越maxSize電子科技大學科園培訓機構TextBox類 主要的方法主要的方法 setString/getString:設定或取出:設定或取
23、出TextBox的內容的內容 size:目前:目前TextBox中的內容的字節(jié)數(shù)中的內容的字節(jié)數(shù) delete:清空:清空TextBox中的內容中的內容 getCaretPosition:獲取輸入光標的位置:獲取輸入光標的位置 insert:在特定位置參與內容:在特定位置參與內容電子科技大學科園培訓機構TextBox類 Constraints 限制類型限制類型 TextField.ANY 允許輸入任何字符或數(shù)字允許輸入任何字符或數(shù)字(Constant 0) TextField.EmailADD 允許輸入電子郵件地址允許輸入電子郵件地址(Constant 1) TextFiled.NUMERIC
24、 只允許輸入數(shù)字只允許輸入數(shù)字(Constant 2)電子科技大學科園培訓機構TextBox類 TextFiled.PHONENUMBER 只允許用戶輸入號碼格式假設運用這個類型只允許用戶輸入號碼格式假設運用這個類型的的TextBox,它會與設備上的撥號程序銜接,用,它會與設備上的撥號程序銜接,用戶輸入后就可以直接撥號。戶輸入后就可以直接撥號。Constant 3 TextFiled.URL 允許用戶輸入允許用戶輸入URL方式的字符串方式的字符串(Constant 4) TextField.DECIMAL 允許用戶輸入小數(shù)允許用戶輸入小數(shù),比如比如-123,0.123, “.5(Constan
25、t 5)電子科技大學科園培訓機構TextBox類 TextField.PASSWORD TextBox中輸入的是涉密信息,顯示以星號替代中輸入的是涉密信息,顯示以星號替代(constant 0 x10000) TextField.UNEDITABLE 用戶目前不能進展輸入操作用戶目前不能進展輸入操作Constant 0 x20000 TextField.SENSITIVE 代表這個輸入的內容銘感,系統(tǒng)不該將它存起代表這個輸入的內容銘感,系統(tǒng)不該將它存起來,即不運用系統(tǒng)的自動保管功能來,即不運用系統(tǒng)的自動保管功能Constant 0 x40000電子科技大學科園培訓機構TextBox類 Text
26、Field.NON_PREDICTIVE 有些設備的輸入發(fā)具有預測輸入功能,運用此限有些設備的輸入發(fā)具有預測輸入功能,運用此限制類型,代表屏蔽該設備的預測輸入功能制類型,代表屏蔽該設備的預測輸入功能(Constant 0 x80000) TextField.INITIAL_CAP_WORD 輸入英文時,自動將每個空格后的單詞首字母大輸入英文時,自動將每個空格后的單詞首字母大寫寫Constant 0 x10000 TextField.INITIAL_CAPS_SENTENCE 在輸入英文時,自動將每一個句子的首字母大寫在輸入英文時,自動將每一個句子的首字母大寫電子科技大學科園培訓機構TextBo
27、x類 只需是不互斥的限制,都可以和其他限制以或只需是不互斥的限制,都可以和其他限制以或(OR)運算符運算符(|)銜接在一同運用。銜接在一同運用。 getConstraints() 獲得目前形狀下有的限制類型,得到前往值后和獲得目前形狀下有的限制類型,得到前往值后和TextField.CONSTRAINT_MASK作位運算即可作位運算即可電子科技大學科園培訓機構AlertType類 簡介簡介 AlertType是一個工具類,本身無法實例化是一個工具類,本身無法實例化,用以輔助,用以輔助Alert類的運用。類的運用。 幾種幾種Alert Type ALARM:警報警報 CONFIRMATION:確定確定 ERROR:錯誤錯誤 INFO:提供信息提供信息 WARNING:警告警告電子科技大學科園培訓機構Alert類 Alert類的作用類的作用 用于經(jīng)過屏幕向用戶顯示有關異常情況或用于經(jīng)過屏幕向用戶顯示有關異常情況或錯誤的信息錯誤的信息 顯示顯示Alert 調用調用Display類的類的setCurrent()方法方法 Alert的作用方式的作用方式 無方式的無方式的Alert 有方式的有方式的Alert電子科技大學科園培訓機構Alert類 無方式的無方式的Alert Alert顯示一定時間后自
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智能物流系統(tǒng)股東合作協(xié)議3篇
- 湖北科技職業(yè)學院《常微分方程專業(yè)理論教學》2023-2024學年第一學期期末試卷
- 二零二五年度綠色環(huán)保居間代理房產(chǎn)租賃合同3篇
- 二零二五年度消防器材供應與安裝協(xié)議3篇
- 2024版規(guī)范化幼兒園承包協(xié)議典范文件版B版
- 2025年度物業(yè)保潔與社區(qū)環(huán)境保護合同3篇
- 2025屆高考地理一輪復習4.2自然災害與人類-以洪災為例練習含解析魯教版
- 2025年度節(jié)能水泵安裝與節(jié)能補貼協(xié)議3篇
- 2025屆高考數(shù)學一輪復習第九章第8講二項式定理基創(chuàng)饋訓練含解析
- 2025屆高考數(shù)學一輪知能訓練第二章函數(shù)導數(shù)及其應用第4講函數(shù)的奇偶性與周期性含解析
- 2024年慶陽市人民醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點附帶答案
- 車間現(xiàn)場防錯培訓課件
- 數(shù)字媒體技術基礎知識單選題100道及答案解析
- 全國職業(yè)院校技能大賽高職組(生產(chǎn)事故應急救援賽項)選拔賽考試題庫500題(含答案)
- 無痛分娩與鎮(zhèn)痛管理制度
- 2025屆中考英語復習課件(外研版廣西專用)13-八年級(下)Modules 1-2
- 2024-2025學年年八年級數(shù)學人教版下冊專題整合復習卷第11章 全等三角形單元試卷(含答案)
- 軟科職教:2024年度中國高職院校升本分析報告
- 華電考試初級理論復習試題及答案
- 第十七屆山東省職業(yè)院校技能大賽市場營銷賽項賽卷第一套
- 塔吊司機和指揮培訓
評論
0/150
提交評論