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

正文內(nèi)容

基于java的掃雷游戲的設(shè)計(jì)與實(shí)現(xiàn)論文(參考版)

2024-11-16 15:30本頁(yè)面
  

【正文】 setVisible(true)。 (o゜ ▽ ゜ )o☆ [BINGO!])。 圖 64 游戲成功界面 public void guoguan(){ setTitle(友情提示 )。 cells[i].setAround_tnt_count(around_tnt_count)。()) around_tnt_count++。 職場(chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 24 } for(mine m:around_tnt){ if(m!=nullamp。down=0) { left_down=down1。 } if(left=0amp。up=0) { left_up=up1。 } if(left=0amp。down=0) { right_down=down+1。 } if(right=0amp。right=0) { right_up=up+1。 } if(up=0amp。 } if((i%cols)!=0) { left=i1。 } if(i+cols) { down=i+cols。 } if(((i+1)%cols)!=0){ right=i+1。 if(icols=0){ up=icols。 int right_up=1,right_down=1。 int around_tnt_count=0。i。 public void init_mine(){//判斷每個(gè)格子周?chē)椎膫€(gè)數(shù),并將其作為非雷格子的一個(gè)屬性 mine[] around_tnt。 前面已經(jīng)提到,遞歸必須設(shè)計(jì)終止的條件判斷,在本游戲的遞歸架構(gòu)中,當(dāng)判斷方塊的內(nèi)容為數(shù)字時(shí)(即在非地雷方塊周?chē)?,即立即停?遞歸程序。 在游戲過(guò)程中,當(dāng)游戲者按下非地雷方塊時(shí),方塊會(huì)沿四周八個(gè)方向向外翻開(kāi)非地雷的方塊。這里首先引入一個(gè) ―遞歸 ‖的概念, ―遞歸 ‖(Recursion)簡(jiǎn)單的說(shuō),就是一個(gè)程序能被自己所定義的語(yǔ)句調(diào)用。 tnts[i]=cells[r]。 while(cells[r].getFlag()){ r=(int)(()*cells_count)。i。當(dāng)游戲界面初始化完成后,這時(shí)在地雷 區(qū)中并未產(chǎn)生地雷,只有當(dāng)玩家在地雷區(qū)中第一次點(diǎn)下左鍵后,才會(huì)在地雷區(qū)中隨機(jī)的布置當(dāng)前游戲難度下應(yīng)該產(chǎn)生的地雷總數(shù),主要用意在于不讓玩家第一次就踩到地雷,這樣在某種程度上可以提高玩家游戲的氣氛。如圖63。在游戲區(qū)按功能將它分成雷區(qū)和提示區(qū)。游戲需要提供一個(gè)菜單欄。 ⑤ 標(biāo)示雷:左鍵點(diǎn)擊出現(xiàn)小旗時(shí),代表下面是地雷。 ③ 若玩家點(diǎn)到的格子周?chē)活w雷也沒(méi)有時(shí):就采用遞歸算法,繼續(xù)向周?chē)鷶U(kuò)展。 掃雷游戲狀態(tài)分類(lèi) 當(dāng)玩家掃雷時(shí),即用鼠標(biāo)點(diǎn)擊一個(gè)格子時(shí),有以下幾種狀態(tài): ① 踩到雷:游戲失敗,結(jié)束游戲。其三者都由默認(rèn)設(shè)置游戲?qū)傩浴? ⑤ setTnt 類(lèi)主要功能:初始化游戲界面、生成隨機(jī)的地雷數(shù),初始化全部格子,將雷隨機(jī)放入格子,判斷每個(gè)格子周?chē)椎膫€(gè)數(shù),并將其作為非雷格子的一個(gè)屬性。 } ③ 游戲基本屬性:地雷數(shù)組行數(shù)、列數(shù)、地雷數(shù)量、游戲難度。 } cells[r].setFlag(true)。i++){ //將雷隨機(jī)放入格子 int r=(int)(()*cells_count)。 ② 掃雷表現(xiàn)形式:使用隨機(jī)函數(shù) random 將雷隨機(jī)放入格子 for(int i=0。通常鼠標(biāo)在軟件的應(yīng)用上經(jīng)常使用右鍵作為確定使用者的操作意圖,而只把 MouseEvent 事件當(dāng)做標(biāo)示的用途(用意就如同前面所提),只是為給使用者一個(gè)反悔的機(jī)會(huì)。切換成打開(kāi)模式,就可以接著翻開(kāi)方塊了。 } } (插旗: +flag)。 class mousL extends MouseAdapter{ //鼠標(biāo)事件監(jiān)聽(tīng) 職場(chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 19 public void mousePressed(MouseEvent e) { // TODO Autogenerated method stub if(()==){ // 在上面面板上點(diǎn)擊鼠標(biāo)右鍵,將當(dāng)前狀態(tài)改為插旗或排雷狀態(tài) if(flag==false){ flag=true。 在 MouseEvent 事件中,可以捕捉鼠標(biāo)所按下或放開(kāi)的按鍵、鼠標(biāo)光標(biāo)在該組件上的坐標(biāo)及是否同時(shí)按下輔助鍵等。 ③ 重新開(kāi)始和插旗。 } 菜單欄的功能 ① 新游戲:根據(jù)當(dāng)前游戲難度直接開(kāi)始一局新游戲。 } (已經(jīng)找到雷的數(shù)量: +score+ 本關(guān)雷的數(shù)量:+Tnt_count+\n)。 score=0。 }else if((高級(jí) )){ Cols=12。 score=0。 }else if((中級(jí) )){ Cols=8。 職場(chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 18 score=0。 if((初級(jí) )){ Cols=5。 圖 62 菜單欄游戲難度選項(xiàng) /*游戲的設(shè)置容易、中等、困難 */ public void itemStateChanged(ItemEvent e) { Object obj=()。 圖 61 菜單中游戲選項(xiàng) 游戲難度的選擇及自定義設(shè)置如圖 62。 JButton isflag。 JButton restart。 職場(chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 17 6. 掃雷游戲的功能實(shí)現(xiàn) 掃雷游戲主要功能的實(shí)現(xiàn) 菜單欄的實(shí)現(xiàn) 在主函數(shù)中實(shí)現(xiàn)菜單功能,主要有游戲的開(kāi)始、重新開(kāi)始、退出、插旗、打開(kāi)如圖61。 (3)mousePressed(MouseEvent)方法是 mousL 類(lèi)實(shí)現(xiàn)的 MouseListener 接口中的方法,當(dāng)用戶(hù)按下鼠標(biāo)有件事 mousePressed(MouseEvent)方法負(fù) 責(zé)讓方塊上顯示一個(gè)探雷標(biāo)記。 (2)actionPerformed(ActionEvent)是 buttonListerner 類(lèi)實(shí)現(xiàn)的 ActionListener 接口中的方法。 actionPerformed(ActionEvent e)就是單擊按鈕觸發(fā)的事件,如果是開(kāi)始按鈕觸發(fā),開(kāi)始計(jì)數(shù),并隨機(jī)分配雷,并計(jì)算沒(méi)有雷的按鈕周?chē)欣椎臄?shù)目。 設(shè)計(jì)思想 ( 1)掃雷棋盤(pán)的布局 設(shè)計(jì) 系統(tǒng)的整體布局為: Layout 布局 , 采用了菜單、按鈕、面板等組件,菜單主要包括等級(jí):初級(jí)、中級(jí)、高級(jí),按鈕的功能是開(kāi)始新的游戲、重新開(kāi)始、停止、插旗。游戲的目標(biāo)是盡可能快地找到所有的雷區(qū),而不踩到地雷。這可以在一張 rows*cols 的網(wǎng)格上通過(guò)均勻分布的隨機(jī)算法實(shí)現(xiàn)。 ( 2) 隨機(jī)分布。 綜上所述,無(wú)論從投資、技術(shù)還是從財(cái)務(wù)、經(jīng)濟(jì)方面,開(kāi)發(fā)該系統(tǒng)是可行的。 經(jīng)濟(jì)可行性:重點(diǎn)以資源配置的方面評(píng)估課題的價(jià)值,評(píng)論課題在實(shí)現(xiàn)區(qū)域經(jīng)濟(jì)發(fā)展目標(biāo)、有效配置經(jīng)濟(jì)資源、增加供應(yīng)、創(chuàng)造就業(yè)、改善環(huán)境、提高人民生活等方面的效益。 組織可行性:制訂合適的項(xiàng)目展開(kāi)進(jìn)度計(jì)劃、建立合適的機(jī)構(gòu)組織、運(yùn)用具有豐富經(jīng)驗(yàn)的人員管理、保持良好的合作關(guān)系、制定合理的練習(xí)計(jì)劃等,確保順利執(zhí)行項(xiàng)目。 財(cái)政可行性:重要以課題及投資者的方面,編寫(xiě)合適的財(cái)政方案,從企業(yè)理財(cái)?shù)姆矫孢M(jìn)行資本預(yù)估,評(píng)價(jià)項(xiàng)目的財(cái)務(wù)盈利能力,進(jìn)行決策投資。 技術(shù)可行性:主要從項(xiàng)目實(shí)施的技術(shù)角度,合理設(shè)計(jì)技術(shù)方案,并進(jìn)行比選和評(píng)價(jià)。一定要掌控可靠真實(shí)的資料,來(lái)確保資料選擇的重要性、全面性、客觀性和連接性; 決定可行性的主要因素 投資必要性:一定要依據(jù)市場(chǎng)調(diào)研和預(yù)算的結(jié)論,還有相關(guān)的行業(yè)政策等原因,論證題目投資開(kāi)發(fā)的必要性。 可行性研究方法 關(guān)于采集的基本資料,要依據(jù)實(shí)際客觀的情況進(jìn)行論證評(píng)估,照實(shí)反映客觀經(jīng)濟(jì)規(guī)律,從客觀數(shù)據(jù)開(kāi)始,經(jīng)過(guò)科學(xué)分析,得出項(xiàng)目是不是可行的結(jié)果。 職場(chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 12 圖 41 總體功能圖 (2)程序總體流程如圖 42 所示。 ⑤ 游戲的測(cè)試。 ③ 游戲難度的選擇。 掃雷游戲的基本功能操作 掃雷游戲以滿足用戶(hù)娛樂(lè)、益智為宗旨,不斷創(chuàng)新以適應(yīng)用戶(hù)越來(lái)越多的要求,本設(shè)計(jì)以用戶(hù)需求為導(dǎo)向,在實(shí)現(xiàn)現(xiàn)主要完成以下功能: ① 游戲的初始化。通過(guò)鼠標(biāo)即可操作游戲。設(shè)計(jì)并實(shí)現(xiàn)基于 Java 的掃雷游戲。 Border 布局管理器是用于 Dialog 和 Frame 的缺省布局管理器。中間區(qū)域是在東、南、西、北都填滿后剩下的區(qū)域。 Border 布局管理器包括五個(gè)明顯的區(qū)域:東、南、西、北、中。 布局管理器負(fù)責(zé)決定布局方針以及其容器的每一個(gè)子組件的大小。 . } 容器布局 (Container Layout) 容器中組件的布局通常由布局管理器控制。 (pan)。 //override default layout mgr (100,100)。 職場(chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 10 ()。 Panel pan = new Panel()。 public class FrameWithPanel extends Frame { // Constructor public FrameWithPanel (String str) { super (str)。用Container 類(lèi)中的 add()方式可以做到這一點(diǎn)。每個(gè)面板都可以有它自己的布管理程序。 . } } 上述程序建立了下述框架,它包含一個(gè)詳細(xì)的題目、大小以及背景色彩。 . (true)。 (500,500)。 職場(chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 9 import .*。 框架類(lèi)中的構(gòu)造程序 Frame(String)用由 String 規(guī)定的標(biāo)題來(lái)創(chuàng)建一個(gè)新的不可見(jiàn)的框架對(duì)象??蚣艿娜笔〔季止芾砥骶褪?Border Layout。它是帶有標(biāo)題和縮放角的窗口。更好的途徑是創(chuàng)建布局管理器的新子類(lèi)。 做完這一步,必須對(duì)所有的組件使用 setLocation(),setSize()或 setBounds(),來(lái)將它們定位在容 器中。如果想這樣做(使用 setLocation(),setSize()或 setBounds()方法中的任何一種),布局管理器將覆蓋你的決定。它負(fù)責(zé)計(jì)算并定義上下文中對(duì)象在實(shí)際屏幕中所需的大小。當(dāng)決定一個(gè)組件的大小時(shí),同樣如此。容器對(duì)布局管理器的特定實(shí)例保持一個(gè)引用。它在模塊 10―AWT組件集 ‖里討論。 Panel 必須放在 Window 之中(或 Window 的子類(lèi)中)以便能顯示出來(lái)。 Panel 包含在另一個(gè)容器中, 或是在 Web 瀏覽器的窗口中。盡管它能移動(dòng),但它不能縮放。 Frame 是一個(gè)帶有標(biāo)題和縮放角的窗口。 Window 有兩種形式: Frame(框架 )和 Dialog(對(duì)話框)。 Window 是 。 Panel 是 Container 的最簡(jiǎn)單的類(lèi)。這些組件也可以是允許其它組件被嵌套在里面的容器,于是就創(chuàng)建了一個(gè)完整的層次結(jié)構(gòu)。 包 包包含生成 WIDGETS 和 GUI 組件的類(lèi)。這將保證一臺(tái)計(jì)算機(jī)上出現(xiàn)的東西與另一臺(tái)上的相一致。 JavaGUI: 建立 GUIs 圖形用戶(hù)界面的建立及布局:它介紹了抽象視窗工具包( AWT),一種建立 GUIs的類(lèi)包。它提供建造塊和構(gòu)造并運(yùn)行集成軟件開(kāi)發(fā)工具的基礎(chǔ)。它主要由 Eclipse 項(xiàng)目、 Eclipse 工具項(xiàng)目和Eclipse 技術(shù)項(xiàng)目三個(gè)項(xiàng)目組成,具體包括四個(gè)部分組成 ——Eclipse Platform、 JDT、 CDT和 PDE。我們可以去 General Workspace 然后在圖中的中間的紅框里選擇你需要的字符集 , 然后你右下角的 Apply 執(zhí)行操作。 修改完點(diǎn)擊 OK?;殘?chǎng)大變樣社區(qū)( ):下載畢業(yè)設(shè)計(jì)成品 7 于 Eclipse 的軟件程序的一個(gè)特殊 案例就是 IBM Rational Software Architect,它是作為IBM Java 開(kāi)發(fā)工具系
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1