freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于java的智能家居控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)(編輯修改稿)

2024-12-28 23:12 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 庭網(wǎng)絡(luò)無(wú)需人工參與,網(wǎng)絡(luò)設(shè)置可自動(dòng)完成。 (2) MIDP MIDP 定義了一套完整的用戶界面接口,全部定義在 . lcdui 包中。 MIDP 用戶界面程序包的核心抽象是類 Displayable。根據(jù)用戶的交互,應(yīng)用程序在完成任務(wù)的每一步不斷設(shè)置和重設(shè)在 Display 對(duì)象上的當(dāng)前Displayable 對(duì)象。用戶任務(wù)(指與用戶界面的交互)通過(guò) Command 對(duì)象來(lái)實(shí)現(xiàn)。當(dāng)用戶選擇了一個(gè) Command 對(duì)象之后,應(yīng)用程序自動(dòng)獲得通知。作為反饋,應(yīng)用程序經(jīng)常改變當(dāng)前的 Displayable 對(duì)象,把另一個(gè) Displayable 作為當(dāng)前值。設(shè)備軟件管理了本地應(yīng)用程序和 MIDP 應(yīng)用程序之間的物理顯示資源的共享。 Displayable 的子類有兩種: Canvas:允許應(yīng)用程序進(jìn)行圖形處理和輸入處理的底層對(duì)象。 Screen:封裝了完整的用戶界面組件(類 Alert、 List、 TextBox、Form)的高層對(duì)象。 List:允許從一個(gè)預(yù)定義的選擇集中選擇 。 TextBox:是一個(gè)擁有可控制編輯方法的平坦文本編輯器。 Alert:顯示臨時(shí)信息或者簡(jiǎn)單選擇問(wèn)詢。 Form:更寬泛的容器,允許顯示多個(gè)密切相關(guān)的叫做 Item 的用戶界面元素。 小結(jié) 本章通過(guò)對(duì)系統(tǒng)的結(jié)構(gòu)、工作原理等各方面的設(shè)計(jì),對(duì)系統(tǒng)的流程以及系統(tǒng)所要完成的功能都有了較為深入的了解。為人們掌握智能家居的使用方法了解智能家居奠定了堅(jiān)實(shí)的基礎(chǔ)。 13 4 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 數(shù)據(jù)存儲(chǔ) 在 MIDP 規(guī)范中,提供了記錄管理系統(tǒng)( Record Management System, RMS),這個(gè)記錄管理系統(tǒng)就是一個(gè)小型簡(jiǎn)單的數(shù)據(jù)庫(kù)管理系統(tǒng)( Database Management System),除了能用于管理系統(tǒng)儲(chǔ)存的資料之外,也可以用于存儲(chǔ)對(duì)象的狀態(tài)信息。 RMS 是 J2me 的一個(gè)重要的子系統(tǒng),目的是實(shí)現(xiàn)應(yīng)用程序本地?cái)?shù)據(jù)的持久性存儲(chǔ)。 RMS 是管理數(shù)據(jù)的系統(tǒng), Record(記錄)是系統(tǒng)中最重要的實(shí)體。在移動(dòng)設(shè)備存儲(chǔ)空間存儲(chǔ)的并不是字段,而是字節(jié)數(shù)組。 RMS 的職責(zé)是存儲(chǔ)和唯一標(biāo)識(shí)記錄,而表示數(shù)據(jù)的任務(wù)是由應(yīng)用程序來(lái)完成的。這樣做的目的是簡(jiǎn)化 MIDP的實(shí)現(xiàn),使得 J2ME 的子系統(tǒng)盡量的小巧、靈活。 Record Store(記錄倉(cāng)儲(chǔ))是一系列的有序集合,記錄是不能單獨(dú)存在的,必須屬于記錄倉(cāng)儲(chǔ)。記錄倉(cāng)儲(chǔ)保證記錄的讀寫操作都是原子的,數(shù)據(jù)不會(huì)被破壞。 在 API 中記錄倉(cāng)儲(chǔ)是由 實(shí)現(xiàn)的。每條記錄代表了一條數(shù)據(jù)信息。一條記錄由一個(gè)整型的 RecordID 與一個(gè)代表數(shù)據(jù)的 byte[]數(shù)組兩個(gè)子元素組成。 RecordID 是每條記錄的唯一標(biāo)識(shí)符,利用這個(gè)標(biāo)識(shí)符可以從記錄倉(cāng)儲(chǔ)中找到對(duì)應(yīng)的一條記錄。其中 RMS 所使用的空間圖如圖所示: R e c o r d S t o r eR e c o r dR e c o r dR e c o r d I D D a t aR e c o r d I D D a t a 圖( 3) RMS 空間圖 基于 JAVA的智能家居系統(tǒng)的設(shè)計(jì) —— 信息控制子系統(tǒng) 14 系統(tǒng)中對(duì)密碼的存儲(chǔ)是通過(guò) RMS 進(jìn)行實(shí)現(xiàn)的。首先要在系統(tǒng)中使用 RMS,首先需要定義 RMS 的名稱。在系統(tǒng)中定義的 RMS 的名稱是 RMS_NAME,然后 對(duì)它進(jìn)行實(shí)例化,使用 rs=openRSAnyway(RMS_NAME)來(lái) 進(jìn)行 。 要寫入密碼,首先就需要打開(kāi) RMS,使用 rs= (rsname, ture)函數(shù),然后 returen rs;即可實(shí)現(xiàn)。密碼寫入之 后則需要關(guān)閉倉(cāng)儲(chǔ),使用 rs= (rsname)來(lái)實(shí)現(xiàn)。 系統(tǒng)中輸入密碼的時(shí)候要驗(yàn)證密碼輸入是否正確,這個(gè)時(shí)候也需要用到倉(cāng)儲(chǔ)。首先需要用函數(shù) (RMS_NAME, ture)來(lái)打開(kāi)倉(cāng)儲(chǔ)和倉(cāng)儲(chǔ)中存儲(chǔ)的數(shù)據(jù)進(jìn)行比對(duì),然后調(diào)用相應(yīng)的函數(shù)來(lái)驗(yàn)證。 系統(tǒng)功能的設(shè)計(jì)與實(shí)現(xiàn) 該智能家居控制系統(tǒng)實(shí)現(xiàn)了以下幾個(gè)功能:登陸、客廳模塊、廚房模塊、臥室模塊和改密等一系列的功能。下面將對(duì)以下幾種功能進(jìn)行詳細(xì)的論述。 客戶 端完成的主要功能包括對(duì)家居的控制。通過(guò)客戶端發(fā)送控制信息通過(guò)網(wǎng)絡(luò)傳送到服務(wù)器端,再由服務(wù)器端返回給客戶端。進(jìn)而實(shí)現(xiàn)對(duì)家居的控制。 其中,系統(tǒng)功能結(jié)構(gòu)圖如下所示: 用 戶 登 錄修改密碼發(fā)送控制信息接收控制信息家具狀態(tài)選擇房間選擇信 息 發(fā) 送 臥 室用戶登錄家具選擇信 息 發(fā) 送 端信 息 接 收?qǐng)D ( 4) 系統(tǒng)功能結(jié)構(gòu)圖 登錄功能的詳細(xì)設(shè)計(jì) 登錄功能是為了保證用戶信息的安全, 因此在智能家居控制系統(tǒng)的首頁(yè)需 15 要鍵入密碼, 鍵入密碼之后,則需要點(diǎn)擊菜單按鈕,然后點(diǎn)擊登入按鈕, 如果密碼輸入正確之后才能進(jìn)入智能家居控制系統(tǒng)。如果密碼輸入錯(cuò)誤,則會(huì)返回一個(gè)頁(yè)面,提示密碼輸入錯(cuò)誤,請(qǐng)重新輸 入。 系統(tǒng)名稱的實(shí)現(xiàn):系統(tǒng)標(biāo)題“智能家居控制系統(tǒng)”首先需要使用 title 來(lái)定義系統(tǒng)名稱。實(shí)現(xiàn)方法如下: public static String TITLE=“ 智能家居控制系統(tǒng) ” ;其中要設(shè)計(jì)它的位置,則需要使用錨點(diǎn)來(lái)實(shí)現(xiàn), 錨點(diǎn)的作用就是設(shè)置占用屏幕矩形方塊的具體位置。實(shí)現(xiàn)方法如下: (Main MID. TITLE,getWidth() /6+10,10,|)。 字體的實(shí)現(xiàn)方法每個(gè) Graphics 都有一個(gè) Font 對(duì)象與其關(guān)聯(lián),來(lái)進(jìn)行文字的 渲染操作,調(diào)用其類方法 setFont(null),即可使字體恢復(fù)到默認(rèn)狀態(tài)。使用 static Font getFont (int face, int Style, int size)來(lái)獲得一個(gè)對(duì)象以表示字體所具有制定的外觀。使用的均為最大字體。 Face 參數(shù),用來(lái)定義字體的外觀。其中使用到的 Font 類定義的外觀常數(shù)如下: Static int FACE_PROPORTIONAL: “比例”字體外觀,數(shù)值 64被制定給此數(shù)。 Style 參數(shù),用來(lái)定義字體的樣式。在這個(gè)類中使用到 Font 類定義的樣式參數(shù)如下: Static int STYLE_PLAIN: 格式常數(shù)“常規(guī)”,數(shù)值 0 被制定給此常數(shù)。 Static int STYLE_BOLD: 格式常數(shù)“加粗”,數(shù)值 1被制定給此常數(shù)。 首頁(yè)顯示圖片的實(shí)現(xiàn)方法:首先需要構(gòu)建畫(huà)布,使用 back = Image. createImage(“/”) 來(lái)實(shí)現(xiàn)對(duì)畫(huà)布 圖片 的載入。 用低級(jí)用戶界面 Canvas 實(shí)現(xiàn)智能家居控制系統(tǒng)中按鈕的設(shè)置。其中對(duì)按鈕的定義操作包括: private Command Cmd_Back。 private Command Cmd_Send。 按鈕實(shí)現(xiàn)的方法包括: Cmd_Back = new Command(返回 , , 1)。 Cmd_Send = new Command(發(fā)送 , , 1)。 密碼鍵入中文本框的實(shí)現(xiàn)則通過(guò) TextField 類來(lái)實(shí)現(xiàn)。 TextField 類用于帶約束的文本類型輸入。密碼的設(shè)置要求輸入密碼的最大值為 8 個(gè)字符。因此對(duì)密碼的限制要求是 32 位。首先要對(duì) TextField 進(jìn)行后臺(tái)的實(shí)例化,然后設(shè)置這個(gè)文本框所在的位置,以及位數(shù)。實(shí)現(xiàn)方法是 textfield=new TextField(“” , “”,8,| ); 輸入密碼之后要獲取 TextField基于 JAVA的智能家居系統(tǒng)的設(shè)計(jì) —— 信息控制子系統(tǒng) 16 中的文本,使用方法是 (str)。來(lái)實(shí)現(xiàn)。 密碼框的畫(huà)法包括對(duì)顏色、字?jǐn)?shù)的限制。其中對(duì)顏色的控制方法是調(diào)用 setColor()方法來(lái)設(shè)置字體的顏色。使用 ()方法來(lái)設(shè)置矩形的邊框。 Fillrect()方法則表示使用指定的畫(huà)刷來(lái)填充矩形。 系統(tǒng)運(yùn)行界面如下所示: 圖( 5)系統(tǒng)運(yùn)行界面 PassWordCanvas 類主要 包含 TextField 子類,首先要對(duì) TextField 在后臺(tái)進(jìn)行實(shí)例化, TextField 是用于帶約束的文本類型輸入。 textfield = new TextField(, , 8, | )。 // 后臺(tái)TextField 實(shí)例化。其中還包括對(duì)登錄界面中字體顏色、背景等方面的設(shè)計(jì)。鍵入密碼“ 1234”之后點(diǎn)擊菜單中的登陸按鈕我們就可以進(jìn)入到智能家居控制系統(tǒng)的頁(yè)面。如果輸入密碼錯(cuò)誤,則跳轉(zhuǎn)到密碼輸入錯(cuò)誤頁(yè)面,重新輸入密碼,直到密碼輸入正確,則可以進(jìn)入到控制頁(yè)面。 密碼錯(cuò)誤界面的實(shí)現(xiàn)方法如下:使用 Screen 類的子類 Alert 來(lái)實(shí)現(xiàn)臨時(shí)信息的顯示。密碼輸入錯(cuò)誤,則跳轉(zhuǎn)進(jìn)入密碼錯(cuò)誤界面,實(shí)現(xiàn)方法是 initAlert()方法。其中顯示文字的實(shí)現(xiàn)方法是alert= new Alert(“ 密碼錯(cuò)誤 ” , “ 請(qǐng)輸入正確的密碼! ” , null,) ; 控 制 按 鈕 的 實(shí) 現(xiàn) 方 法 是 : (new Command(“ 退出 ” , ,2))。 (new Command(“ 返回 ” , ,1))。文字顯示的位置也是通過(guò)錨點(diǎn)來(lái)實(shí)現(xiàn)。其中密碼輸入錯(cuò)誤之后頁(yè)面提示界面如下: 17 圖( 6)密碼鍵入錯(cuò)誤 要實(shí)現(xiàn)對(duì)該頁(yè)面的設(shè)計(jì),首先需要填充背景的顏色,畫(huà)出背景的邊框、標(biāo)題等。要通過(guò)確定錨點(diǎn)來(lái)實(shí)現(xiàn)對(duì)功能的定位。而鍵入的密碼則存儲(chǔ)在倉(cāng)儲(chǔ)中。通過(guò)調(diào)用 getNextRecordID()方法來(lái) 驗(yàn)證鍵入的密碼是否正確。如果密碼輸入錯(cuò)誤,則會(huì)調(diào)用 initAlert()方法將“密碼錯(cuò)誤,請(qǐng)輸入正確的密碼”返回給用戶。 如果密碼輸入錯(cuò)誤,我們可以選擇回刪按鈕,調(diào)用 deleteOneChar()方法來(lái)刪除字符。最終輸入正確的密碼后, 調(diào)用 IntoSystem()方法進(jìn)入系統(tǒng)。 家居狀態(tài)的詳細(xì)設(shè)計(jì) 密碼鍵入成功之后,就會(huì)自動(dòng)跳轉(zhuǎn)到家居的控制頁(yè)面。選擇客廳點(diǎn)擊開(kāi)始按鈕,就會(huì)進(jìn)入到家具的選擇頁(yè)面。其中包括:防盜門、窗簾、吊燈、空調(diào)和電視的控制。防盜門、窗簾和電視的狀態(tài)包括開(kāi)啟和關(guān)閉兩種狀態(tài)。另外吊燈在開(kāi) 啟和關(guān)閉的基礎(chǔ)上另外增加了對(duì)亮度的控制。空調(diào)則是在開(kāi)啟和關(guān)閉的基礎(chǔ)上增加了對(duì)濕度和溫度的調(diào)節(jié)和控制。 輸入密碼正確之后,則可以進(jìn)入到系統(tǒng)控制界面。其中包括:客廳、廚房、臥室和 修改密碼 功能。 其中,這幾個(gè)模塊在頁(yè)面中的顯示方法是通過(guò)數(shù)組的形式來(lái)定義的。定義方法是 private String[] SEECT_ITEM = {“客廳”,“ 廚房 ”,“ 臥室 ”,“ 修改密碼 ” },然后通過(guò) if 語(yǔ)句來(lái)實(shí)現(xiàn)對(duì)文本框現(xiàn)在所在位置的確定。 Fnt= 基于 JAVA的智能家居系統(tǒng)的設(shè)計(jì) —— 信息控制子系統(tǒng) 18 (,|, )。這里實(shí)現(xiàn)了對(duì)字體的定義 , 然后調(diào)用 setFont()函數(shù)來(lái)實(shí)現(xiàn)。歡迎回到溫暖之家這幾個(gè)字的實(shí)現(xiàn)方法如下: (0x0011CC)最終顯示的字體為藍(lán)色。確定位置所使用的函數(shù)是 (“ 歡迎回到溫暖之家 ” ,getWidth()/6+10,10,|),確定屏幕中這幾個(gè)模塊所在的位置, 使用 Graphics 類提供的繪圖來(lái)實(shí)現(xiàn)。實(shí)現(xiàn)方法為(fnt)。(0xAA2200)。(SELECT_ITEM[i], pos[0] 1, pos[1] * (i + 3), | )。其中,系統(tǒng)運(yùn)行界面圖如下所示: 圖( 7)家居狀態(tài)選擇界面 客廳、廚房、臥室的布局都是類似的,現(xiàn)在我們選擇以客廳為例 ,客廳中的家居包括:防盜門、窗簾、吊燈、空調(diào)和電視。 這幾個(gè)家居的實(shí)現(xiàn)方法和上面我們實(shí)現(xiàn)的方法類似, 但是在文本上增加了矩形方框的設(shè)計(jì)。選 擇客廳調(diào)用FamilyList 函數(shù) in=new FamilyList(display,this, “ 客廳 ” ,stringArray, (“ ” ))。使用 void drawRect()函數(shù)來(lái)實(shí)現(xiàn)。 其運(yùn)行界面圖如下所示: 19 圖 ( 8) 客廳運(yùn)行頁(yè)面 (1) 對(duì)燈光的控制包括: 無(wú)線射頻燈光控制系統(tǒng)由智能面板開(kāi)關(guān)和調(diào)光器組成,調(diào)光器用以發(fā)送和接收命令信號(hào),命令通過(guò)無(wú)線電傳播,而不是通過(guò)家庭的電源線路傳輸。每個(gè)面板開(kāi)關(guān)都備有一個(gè)不同的遙控 識(shí)別代碼。這些代碼利用 19 位識(shí)別技術(shù),使接收器能準(zhǔn)確辨別每個(gè)指令。即使鄰居同時(shí)使用,也絕對(duì)不會(huì)因其遙控器干擾而發(fā)生傳輸錯(cuò)誤。調(diào)光開(kāi)關(guān)同樣內(nèi)置 RF 無(wú)線射頻發(fā)射器,能獨(dú)立于遙控器或移動(dòng)開(kāi)關(guān)之外,控制落地?zé)艋蜃罒舻拈_(kāi)關(guān)或隨意調(diào)節(jié)燈光亮度。減少干擾,傳送或接收指令更加準(zhǔn)確無(wú)誤。 其中,開(kāi)啟和關(guān)閉,除了在位置上的設(shè)置之外,還增加了矩形框的設(shè)計(jì)。當(dāng)矩形框在開(kāi)啟這兩個(gè)字上面時(shí),開(kāi)啟二字加粗,關(guān)閉使用常規(guī)。 首先定義兩個(gè)函數(shù) fnt和 fnt2 來(lái)表示常規(guī)和加粗兩種狀態(tài)下所調(diào)用的方法。分別為 fnt=(, BLOD|,)。fnt2=(R
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1