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

正文內(nèi)容

本科畢業(yè)設(shè)計(jì)-基于java組件技術(shù)的拼圖游戲軟件的設(shè)計(jì)與實(shí)現(xiàn)(參考版)

2025-01-19 17:08本頁(yè)面
  

【正文】 拼圖游戲窗體外觀的測(cè)試表75 游戲窗體外觀測(cè)試測(cè)試用例5描述測(cè)試拼圖游戲窗體外觀測(cè)試方法點(diǎn)擊系統(tǒng)提供的相應(yīng)外觀選項(xiàng)期望結(jié)果出來(lái)的效果均是選擇的相應(yīng)選項(xiàng)相符測(cè)試結(jié)果(正確或錯(cuò)誤)正確測(cè)試人Date : 2012/05/05游戲窗體外觀測(cè)試的測(cè)試用例表如表75所示,表中體現(xiàn)出該用例是針對(duì)。 背景音樂(lè)測(cè)試表74 背景音樂(lè)測(cè)試測(cè)試用例4描述測(cè)試背景音樂(lè)測(cè)試方法選擇每種背景音樂(lè)期望結(jié)果播放出來(lái)的都是相應(yīng)選擇的音樂(lè)測(cè)試結(jié)果(正確或錯(cuò)誤)正確測(cè)試人Date : 2012/05/05背景音樂(lè)測(cè)試的測(cè)試用例表如表74所示,表中體現(xiàn)出該用例是針對(duì)拼圖游戲能否正常進(jìn)行難度選擇,并完成個(gè)難度的拼圖游戲而進(jìn)行測(cè)試的。 游戲難度測(cè)試表73 游戲難度測(cè)試測(cè)試用例3描述測(cè)試游戲難度情況測(cè)試方法點(diǎn)擊游戲難度選擇相應(yīng)的難度,每種都能拼圖成功期望結(jié)果初級(jí),中級(jí),高級(jí)均可拼圖成功測(cè)試結(jié)果(正確或錯(cuò)誤)正確測(cè)試人Date : 2012/05/04游戲難度測(cè)試的測(cè)試用例表如表73所示,表中體現(xiàn)出該用例是針對(duì)拼圖游戲能否正常進(jìn)行難度選擇,并完成個(gè)難度的拼圖游戲而進(jìn)行測(cè)試的。 拼圖測(cè)試表72 拼圖測(cè)試測(cè)試用例2描述測(cè)試游戲是否能拼圖,能否拼圖成功測(cè)試方法點(diǎn)擊鼠標(biāo)左右鍵進(jìn)行游戲,直至拼圖成功期望結(jié)果成功產(chǎn)生相應(yīng)的拼圖成功效果測(cè)試結(jié)果(正確或錯(cuò)誤)正確測(cè)試人Date :2012/05/04拼圖測(cè)試的測(cè)試用例表如表72所示,表中體現(xiàn)出該用例是針對(duì)拼圖游戲是否能和正常拼圖而進(jìn)行測(cè)試的。 部分測(cè)試用例 系統(tǒng)啟動(dòng)測(cè)試表71 啟動(dòng)測(cè)試測(cè)試用例1描述測(cè)試拼圖游戲是否啟動(dòng)正常測(cè)試方法運(yùn)行程序期望結(jié)果啟動(dòng)成功,看到主界面,并且能正常登陸進(jìn)入測(cè)試結(jié)果(正確或錯(cuò)誤)正確測(cè)試人 Date : 2012/05/04啟動(dòng)測(cè)試的測(cè)試用例表如表71所示,表中體現(xiàn)出該用例是針對(duì)拼圖游戲是否能和正常啟動(dòng)而進(jìn)行測(cè)試的。所以在對(duì)一個(gè)軟件產(chǎn)品進(jìn)行測(cè)試時(shí),為了謹(jǐn)慎全面的測(cè)試出軟件的質(zhì)量,通常使用白盒測(cè)試法,也就是根據(jù)程序的內(nèi)部處理邏輯來(lái)設(shè)計(jì)測(cè)試用例。黑盒測(cè)試即針對(duì)程序所有功能設(shè)計(jì)的測(cè)試方法,而白盒測(cè)試針對(duì)程序的邏輯結(jié)構(gòu)設(shè)計(jì)測(cè)試用例,用邏輯覆蓋率來(lái)衡量測(cè)試的完整性。對(duì)本系統(tǒng)而言,選擇單元測(cè)試的測(cè)試方法。程序調(diào)試和組件測(cè)試我們?cè)谠O(shè)計(jì)和編碼的過(guò)程中通過(guò)編譯程序編譯、軟件錯(cuò)誤信息的提供,我們可以逐步修正錯(cuò)誤,程序能夠得到一步的完善。 在測(cè)試和調(diào)試應(yīng)用程序時(shí),應(yīng)注意以下問(wèn)題:1.程序設(shè)計(jì)者不應(yīng)測(cè)試自己設(shè)計(jì)的程序;2.測(cè)試用例的設(shè)計(jì)不僅要有合理的輸入數(shù)據(jù),還要有不合理的輸出數(shù)據(jù);3.除了檢查程序是否做完了它應(yīng)做的事之外,還要檢查它是否做完了它不應(yīng)做的事。確認(rèn)測(cè)試主要檢查軟件功能與用戶的需求是否一致。 測(cè)試的目的及相關(guān)問(wèn)題軟件測(cè)試分為幾個(gè)部分:?jiǎn)卧獪y(cè)試集中檢查軟件設(shè)計(jì)的最小單元——模塊,包括程序測(cè)試,即發(fā)現(xiàn)程序中的代碼錯(cuò)誤,然后逐一解決;組裝測(cè)試相當(dāng)于聯(lián)調(diào),主要是考察模塊間的接口和各模塊之間的聯(lián)系。通過(guò)測(cè)試可以發(fā)現(xiàn)系統(tǒng)設(shè)計(jì)中存在的種種問(wèn)題,并可以及時(shí)改正,避免在系統(tǒng)投入使用時(shí)才發(fā)現(xiàn)不必要的錯(cuò)誤,從而導(dǎo)致不必要的損失,尤其對(duì)于大多數(shù)將要投入市場(chǎng)的軟件產(chǎn)品而言,及時(shí)挽救錯(cuò)誤能夠保證研發(fā)者和用戶群體的利益。7 軟件測(cè)試對(duì)于一個(gè)開(kāi)發(fā)中的軟件來(lái)說(shuō),系統(tǒng)測(cè)試是衡量軟件產(chǎn)品質(zhì)量的重要保證活動(dòng)之一。在界面的設(shè)計(jì)上采用面向?qū)ο蟮姆绞?,先設(shè)計(jì)底層模塊,把有共性的界面設(shè)計(jì),功能放在底層模塊統(tǒng)一處理。選擇更換背景音樂(lè)后,就會(huì)創(chuàng)建新的線程,開(kāi)始新的線程。具體實(shí)現(xiàn)方法是創(chuàng)建“外觀”菜單,并在菜單中創(chuàng)建三種外觀選擇的菜單項(xiàng),分別添加事件監(jiān)聽(tīng)器,一旦鼠標(biāo)點(diǎn)擊,監(jiān)聽(tīng)器將事件傳給事件處理函數(shù)進(jìn)行處理。分別添加事件監(jiān)聽(tīng)器,一旦鼠標(biāo)點(diǎn)擊,監(jiān)聽(tīng)器將事件傳給事件處理函數(shù)進(jìn)行處理。9. 游戲難度選擇界面的設(shè)計(jì)與實(shí)現(xiàn)圖617 游戲難度選擇游戲難度選擇界面如圖617所示,這里主要是對(duì)游戲的難度進(jìn)行選擇和控制主要是包括初級(jí),中級(jí)和高級(jí)。用戶也可以選擇自定義圖片選項(xiàng)來(lái)選擇自己喜歡的圖片進(jìn)行游戲,自定義圖片的具體實(shí)現(xiàn)方法是通過(guò)創(chuàng)建文件對(duì)話框及文件過(guò)濾器,之后添加過(guò)濾器到文件對(duì)話框中。8. 更換圖片界面的設(shè)計(jì)與實(shí)現(xiàn)圖616 更換圖片界面更換圖片界面如圖616所示,此部分實(shí)現(xiàn)是通過(guò)添加事件監(jiān)聽(tīng)器,一旦有鼠標(biāo)點(diǎn)擊,監(jiān)聽(tīng)器就會(huì)收到信息,并將事件傳給事件處理函數(shù)進(jìn)行處理,actionlistenner與actionperformed相呼應(yīng),前者接受事件信號(hào),后者進(jìn)行動(dòng)作。這是通過(guò)創(chuàng)建得分實(shí)例來(lái)實(shí)現(xiàn)的。 (v)。//設(shè)置數(shù)組的時(shí)間 ((i))。//設(shè)置數(shù)組的等級(jí) ((()))。//創(chuàng)建一個(gè)數(shù)組 (())。//降序排列 int i=1。創(chuàng)建一個(gè)顯示用戶分?jǐn)?shù)的集合,并通過(guò)for(Grade g:alGrade) 循環(huán)顯示用戶得分,之后創(chuàng)建一個(gè)vector數(shù)組,并設(shè)置該數(shù)組下的用戶名、得分、等級(jí)、時(shí)間等信息,在table中添加一行以存放以上信息。//設(shè)置數(shù)組的時(shí)間 (v)。//設(shè)置數(shù)組的等級(jí) ((()))。//創(chuàng)建一個(gè)數(shù)組 (())。//創(chuàng)建一個(gè)用戶分?jǐn)?shù)的實(shí)體類 ArrayListGrade alGrade=(gd)。程序會(huì)創(chuàng)建一個(gè)帶圖片的label對(duì)象,即一個(gè)原圖label,設(shè)置該label的大小寬度后,創(chuàng)建原圖圖像窗體對(duì)象,通過(guò)事件監(jiān)聽(tīng)器,用戶一旦點(diǎn)擊原圖顯示菜單選項(xiàng),就會(huì)通過(guò)事件監(jiān)聽(tīng)處理函數(shù)。//移動(dòng)label對(duì)象并調(diào)整大小 imgAll=new ImgAll(this,false,label_all)。5. 原圖效果游戲界面設(shè)計(jì)與實(shí)現(xiàn)圖613 原圖效果游戲界面實(shí)現(xiàn)代碼如下:label_all=new ImgPart(20)。4. 幫助菜單功能界面設(shè)計(jì)與實(shí)現(xiàn)圖612 幫助菜單界面圖幫助菜單界面如圖612所示,具體實(shí)現(xiàn)方法是先創(chuàng)建菜單項(xiàng):外觀,原圖效果,游戲幫助和關(guān)于軟件四項(xiàng),在外觀菜單中創(chuàng)建子菜單項(xiàng):初級(jí)(9宮格),中級(jí)(16宮格)和高級(jí)(25宮格)。//創(chuàng)建一個(gè)排名菜單項(xiàng) (this)。//創(chuàng)建一個(gè)戰(zhàn)況菜單項(xiàng) (this)。//設(shè)置按鈕的助記符為X (this)。X39。//添加點(diǎn)擊事件 item3=new JMenuItem(退出(X))。)。//創(chuàng)建開(kāi)始游戲菜單項(xiàng) (39。//設(shè)置按鈕的助記符為H拼圖游戲主界面如圖610所示,用戶登錄后,默認(rèn)的情況下,進(jìn)入的是一個(gè)初級(jí)的9格拼圖游戲,在這里就是一個(gè)游戲的主菜單了,可以在“游戲”菜單中選擇游戲難度等相關(guān)設(shè)置信息,也可以選擇“幫助”,在主界面右上方是個(gè)游戲計(jì)時(shí)器,進(jìn)行游戲時(shí)間統(tǒng)計(jì),也有步數(shù)的統(tǒng)計(jì),根據(jù)此生成游戲的成績(jī)。H39。//設(shè)置按鈕的助記符為G menu2=new JMenu(幫助(H))。G39。//設(shè)置字體menu1=new JMenu(游戲(G))。//創(chuàng)建一個(gè)label對(duì)象來(lái)顯示步數(shù) (100, 20)。//設(shè)置大小 (new Font(宋體,1,14))。2. 游戲主界面設(shè)計(jì)與實(shí)現(xiàn)圖610 拼圖游戲主界面實(shí)現(xiàn)代碼如下:time_label=new JLabel()。//顯示登錄窗體}注冊(cè)成功的界面如圖69所示,顯示注冊(cè)成功的代碼是通過(guò)彈出文本對(duì)話框?qū)崿F(xiàn)的,登錄成功后,會(huì)銷毀當(dāng)前窗體并顯示登錄窗體。()。在這里用戶注冊(cè)賬號(hào)信息包括賬號(hào),密碼和確認(rèn)密碼三項(xiàng),賬號(hào)和密碼不得少于五位,如無(wú)重復(fù)賬號(hào)名則注冊(cè)成功,顯示注冊(cè)成功的信息界面如圖69所示:圖69 注冊(cè)成功界面圖實(shí)現(xiàn)代碼如下: int regcount=(ui)。}登陸界面如圖67所示,游戲開(kāi)始會(huì)立即彈出登錄窗口,要求用戶在這里輸入正確的用戶名和密碼才可以進(jìn)入拼圖游戲界面,此處運(yùn)用到的是Java swing中的JFrame類、JLabel類、JTextField類以及JButton類等。//創(chuàng)建登錄button對(duì)象 jbtnregister=new JButton(注冊(cè))。//創(chuàng)建輸入帳號(hào)文本框?qū)ο? jtxtpwd=new JPasswordField()。//創(chuàng)建帳號(hào)label對(duì)象 jlabPwd=new JLabel(密碼:)。1. 登錄注冊(cè)界面的設(shè)計(jì)與實(shí)現(xiàn)圖67 拼圖游戲登錄界面圖實(shí)現(xiàn)代碼如下:public Login() { jfrmlogin=new JFrame(登錄)。本系統(tǒng)在設(shè)計(jì)時(shí)充分考慮到操作易用性及準(zhǔn)確性,采用了人機(jī)對(duì)話方式。目標(biāo)是在保證輸入信息正確性和滿足需要的前提下,應(yīng)做到輸入方法簡(jiǎn)單、迅速、經(jīng)濟(jì)和方便使用者。數(shù)據(jù)的收集和錄入是比較費(fèi)事的,需要大量人力和一定設(shè)備,并且容易出錯(cuò)。算法中,如果label集合中指定的label的的邊界等于rt集合中指定位置的邊界(rt集合就是按從左到右,從上到下按順序排列的空間位置),直至tk==9時(shí),即label數(shù)組里的label的邊框與rt數(shù)組中的位置完全重合時(shí),拼圖成功。return false。i++){if(label[i].getBounds().equals(rt[i])){tk++。for(int i=0。之后用swing中的另一個(gè)方法創(chuàng)建文件過(guò)濾器對(duì)象,規(guī)定只能選取jpg以及gif這幾種格式的圖片文件,之后將得到的圖片轉(zhuǎn)換為imageicon,并賦值給icon,完成自定義圖片工作。//設(shè)置時(shí)間等于0 nStep=0。 if(returnVal == ) {icon=new ImageIcon(().toString())。 (filter)。//創(chuàng)建選擇文件對(duì)話框 FileNameExtensionFilter filter = new FileNameExtensionFilter(JPG amp。 即可以移動(dòng)。 }如果空白label的x坐標(biāo)與傳入的labell的x坐標(biāo)相等,即說(shuō)明要移動(dòng)的圖片在空白label的上放或者下方,空白label的y坐標(biāo)減去傳入labell的y坐標(biāo)的絕對(duì)值等于空白label的的高度時(shí)返回true。(label[8].getBounds().().x)==label[8].getWidth()) return true。 else if(label[8].getBounds().y==().yamp。amp。也就是說(shuō),當(dāng)運(yùn)用到八數(shù)碼問(wèn)題后,按照八數(shù)碼函數(shù)進(jìn)行運(yùn)算,才能保證圖片拆分后,經(jīng)過(guò)用戶的拼湊,最終可以完成整個(gè)拼圖游戲,而不會(huì)無(wú)解。12345678 圖66 八數(shù)碼示例圖 最后得到的結(jié)果如圖66所示,八數(shù)碼問(wèn)題是該游戲軟件的設(shè)計(jì)重點(diǎn),理解八數(shù)碼函數(shù)是程序設(shè)計(jì)的關(guān)鍵。那么上面的數(shù)組我們就可以解出它的結(jié)果。我們可以把一個(gè)隨機(jī)排列的數(shù)組從左到右從上到下用一個(gè)一維數(shù)組表示,我們就可以表示成{8,7,1,5,2,6,3,4,0}其中0代表空格。調(diào)整的規(guī)則是:每次只能將與空格(上、下、或左、右)相鄰的一個(gè)數(shù)字平移到空格中。254173861238476512345678 圖65 八數(shù)碼示例圖八數(shù)碼的問(wèn)題說(shuō)明如圖65所示,八數(shù)碼問(wèn)題(九宮問(wèn)題)在一個(gè)3*3的九宮中有18這8個(gè)數(shù)及一個(gè)空格隨機(jī)的擺放在其中的格子里。//返回結(jié)果}創(chuàng)建執(zhí)行操作對(duì)象,創(chuàng)建數(shù)據(jù)集,將得分?jǐn)?shù)據(jù)放在grade 這個(gè)容器里,用戶可選擇想要查詢的用戶信息,數(shù)據(jù)庫(kù)便執(zhí)行查詢操作,如果數(shù)據(jù)庫(kù)中存在該用戶的信息,便創(chuàng)建一個(gè)得分實(shí)例,并設(shè)置相關(guān)信息項(xiàng),之后將得分實(shí)例添加到grade這個(gè)集合中。} } catch (SQLException e) {// TODO Autogenerated catch block ()。 while(()) { Grade g=new Grade()。+()+39。 try { sm=()。 ResultSet rs=null。利用try catch語(yǔ)句,一旦程序出現(xiàn)錯(cuò)誤,程序會(huì)報(bào)錯(cuò)。 } 更新用戶得分主要是通過(guò)定義執(zhí)行操作對(duì)象,創(chuàng)建執(zhí)行操作對(duì)象,然后執(zhí)行數(shù)據(jù)庫(kù)語(yǔ)句,即execute Update語(yǔ)句。 } catch (SQLException e) { // TODO Autogenerated catch block ()。+()+39。 int count =0。用戶可輸入用戶名和密碼來(lái)實(shí)現(xiàn)注冊(cè)工作,之后數(shù)據(jù)庫(kù)會(huì)執(zhí)行更新操作,將新注冊(cè)的用戶信息更新到原有數(shù)據(jù)庫(kù)中。 } return count。))。,39。 count=(insert into UserInfo values(39。 int count =0。其間,若操作有誤便會(huì)通過(guò)try catch語(yǔ)句拋出異常。 }return count。 if(()) {count=1。+()+39。//創(chuàng)建執(zhí)行操作對(duì)象 } catch (SQLException e) {// TODO Autogenerated catch block ()。 Statement st=null。也就是說(shuō),DAO是操作數(shù)據(jù)庫(kù)的,提供對(duì)數(shù)據(jù)庫(kù)的基本操作,model利用DAO里的方法完成業(yè)務(wù)邏輯處理,本身不涉及對(duì)數(shù)據(jù)庫(kù)的操作。設(shè)計(jì)中涉及到
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1