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

正文內(nèi)容

基于java的掃雷游戲課程設(shè)計(jì)-展示頁(yè)

2025-06-15 08:19本頁(yè)面
  

【正文】 件,增加了獲勝時(shí)修改光榮榜并且自動(dòng)保存文件的功能,同時(shí)新增 nameInput窗口類(lèi)到游戲結(jié)束時(shí)并且成績(jī)足以進(jìn)入光榮榜時(shí)調(diào)用的方法中,用于輸入獲取進(jìn)入光榮榜的玩家信息。方法解決了關(guān)閉窗口時(shí)導(dǎo)致的程序異常終止的錯(cuò)誤。 對(duì)記錄窗體的改動(dòng): 通過(guò)取消設(shè)定 recordFrame類(lèi)的()。 在第六個(gè)版本中,實(shí)現(xiàn)如下功能: 再次改進(jìn)了按鍵監(jiān)聽(tīng)的點(diǎn)亮區(qū)域算法: 進(jìn)行遞歸遍歷時(shí)將正相鄰和斜相鄰兩種情況分開(kāi),使斜相鄰的地雷值為 0的格子不再會(huì)被自動(dòng)點(diǎn)亮,提高了游戲性,至此版本為止,該算法已經(jīng)完全符合預(yù)期要求。 在第五個(gè)版本中,實(shí)現(xiàn)如下功能: 更改了獲勝和失敗后的提示信息: 將本次游戲時(shí)間加入了游戲結(jié)束時(shí)的提示窗口。 在第四個(gè)版本中,實(shí)現(xiàn)如下功能: 調(diào)整了按鍵監(jiān)聽(tīng)的 點(diǎn)亮區(qū)域算法,當(dāng)且僅當(dāng)點(diǎn)擊處周?chē)鷽](méi)有地雷時(shí)才會(huì)觸發(fā)openButton()算法,否則僅顯示當(dāng)前區(qū)域,提高了游戲性: 重寫(xiě)了 Button的 ActionListener,按條件區(qū)分是否執(zhí)行遞歸點(diǎn)亮算法,當(dāng)且僅當(dāng)單擊區(qū)域?yàn)榭盏臅r(shí)候才執(zhí)行點(diǎn)亮算法,否則僅點(diǎn)亮該區(qū)域。 在第三個(gè)版本中,實(shí)現(xiàn)如下功能: 修復(fù)了一個(gè)導(dǎo)致重新開(kāi)始后第一行雷點(diǎn)位置不變的 BUG: 重寫(xiě)游戲結(jié)束的算法,改變循環(huán)的起始點(diǎn),使其可以正確生成虛擬的雷點(diǎn)。 新增失敗提示框和自動(dòng)刷新功能: 即點(diǎn)亮了地雷的區(qū)域后,自動(dòng)彈出對(duì)話(huà)框提示失敗并且執(zhí)行游戲結(jié)束的方法。 關(guān)于按鍵及其功能: 通過(guò)“關(guān)于”按鍵彈出一個(gè) MessageDialog。 基于 Button的雷區(qū)覆蓋面板建立以及虛擬雷盤(pán)的 ActionListener的連接: 將生成好的底板覆蓋上 12*12的 Button并且為每個(gè) Button添加ActionListener,實(shí)現(xiàn)點(diǎn)擊后隱藏對(duì)應(yīng)的 Button功能。 基于 Random方法的虛擬雷盤(pán)的建立和動(dòng)態(tài)修改: 通過(guò) Random產(chǎn)生出一個(gè) 14*14的數(shù)組,其中,二維數(shù)組邊緣對(duì)應(yīng)邊框標(biāo)記值為 2,產(chǎn)生的雷點(diǎn)標(biāo)記為 1,普通點(diǎn)標(biāo)記為 0。 二、 系統(tǒng)設(shè)計(jì) 本游戲采用快速原型模型的軟件開(kāi)發(fā)方法設(shè)計(jì),總共經(jīng)歷了八個(gè)版本的修改最終完成設(shè)計(jì)要求?;?JAVA 的掃雷小游戲 一、 引言 本次課程設(shè)計(jì)目的在于設(shè)計(jì)開(kāi)發(fā)一個(gè)類(lèi)似 windows自帶掃雷游戲的小游戲,實(shí)現(xiàn)基本的掃雷面板及掃雷的游戲功能、游戲數(shù)據(jù)存儲(chǔ)、游戲計(jì)時(shí)等功能。設(shè)計(jì)采用 Windows下的 eclipse開(kāi)發(fā)工具由本人獨(dú)立完成。 在第一個(gè)版本中,實(shí)現(xiàn)如下功能: 基于 JFrame的掃雷框架的建立: 使用 JFrame建立起如圖的所示的程序框架,雷區(qū)為 12*12,添加 JPanel和 JButton,采用 setBounds的布局方式而非內(nèi)置的布局方法。再次建立一個(gè) 12*12的數(shù)組對(duì)應(yīng)實(shí)際的游戲面板,初始值為 0,遍歷 14*14的數(shù)組中非邊緣的元素,將每個(gè)格子周?chē)牡乩讛?shù)目賦值給對(duì)應(yīng)的 12*12數(shù)組,地雷仍然用 1來(lái)表示,最后遍歷 12*12的數(shù)組同時(shí)把數(shù)組中非 0非 1的數(shù)繪制到 JPanel上,值為 1的元素向面板對(duì)應(yīng)位置添加一個(gè)地雷的圖片(注:地雷圖 片來(lái)自 Windows7自帶掃雷游戲的截圖)。結(jié)果如下圖: 重新開(kāi)始及其按鍵功能的實(shí)現(xiàn): 通過(guò)“重新開(kāi)始”按鍵重新生成雷區(qū)以及重新覆蓋 Button到所有格子。 在第二個(gè)版本中,實(shí)現(xiàn)如下 功能: 新增利用遞歸算法實(shí)現(xiàn)的一次點(diǎn)開(kāi)一片區(qū)域功能 : 通過(guò)數(shù)據(jù)結(jié)構(gòu)中的走迷宮算法在按鍵監(jiān)聽(tīng)中加入了連鎖點(diǎn)亮的算法,點(diǎn)亮該格,然后依次遍歷 12*12表的周?chē)?9格,發(fā)現(xiàn)為空格即遞歸調(diào)用遍歷算法,發(fā)現(xiàn)數(shù)字即點(diǎn)亮該格并 return,初步實(shí)現(xiàn)了如圖所示的功能: 新增虛擬訪(fǎng)問(wèn)判定表的建立和刷新及修改: 即通過(guò)查找已標(biāo)記的正確的雷并且計(jì)數(shù),如果達(dá)到了設(shè)定了雷的最大值即執(zhí)行游戲結(jié)束的方法。 對(duì)原 boom表進(jìn)行了改動(dòng) ,解決了虛擬表和實(shí)際表的下標(biāo)錯(cuò)位問(wèn)題 將原 12*12的數(shù)組擴(kuò)充到 14*14。 新增了右鍵標(biāo)記、取消雷點(diǎn)的功能: 為每個(gè) Button添加了 MouseListener從而實(shí)現(xiàn)了當(dāng)點(diǎn)擊鼠標(biāo)右鍵時(shí)可以修改 Button上文字,顯示為雷,并且當(dāng)該 Button已經(jīng)顯示了雷的時(shí)候再次右鍵該 Button可以取消文字顯示。 新增了基于 ()的計(jì)時(shí)器功能,計(jì)時(shí)器與重新開(kāi)始游戲?qū)?yīng)同步更新: 通過(guò)在游戲開(kāi)始時(shí)獲取一個(gè) currentTimeMillis()以及實(shí)時(shí)監(jiān)控并刷新計(jì)時(shí)器窗口的值為當(dāng)前時(shí)間減去初始時(shí)間除以 1000,為節(jié)約內(nèi)存 ,單獨(dú)為計(jì)時(shí)器開(kāi)辟了一個(gè)線(xiàn)程,每工作一次該線(xiàn)程休息 。 新增了“記錄”窗體的框架和面板: 增加了一個(gè)新的 JFrame,對(duì)應(yīng)“記錄”按鈕。 游戲后臺(tái)新加入了 recordlist類(lèi), 用來(lái)存儲(chǔ)和處理光榮榜的數(shù)據(jù): 該類(lèi)擁有 10條記錄以及插入新數(shù)據(jù)到對(duì)應(yīng)位置的功能。以及設(shè)定()。 在第七個(gè)版本中,實(shí)現(xiàn)如下功能: 記錄的讀取與存儲(chǔ): 通過(guò) ObjectOutputStream和 ObjectInputStream成功實(shí)現(xiàn)了對(duì)光榮榜文件的存取功能。 在最終版本中,實(shí)現(xiàn)如下功能: 記錄與游戲的同步措施: 通過(guò)更改 FileOutputStream的實(shí)現(xiàn)位置到 nameInputer中的actionListener中并且將 recordlist和 usedTime以參數(shù)形式通過(guò)構(gòu)造函數(shù)傳入 nameInputer類(lèi)中成功實(shí)現(xiàn)了光榮榜數(shù)據(jù)文件的存取。 import .*。 import 。 public class sweeper{ Button boom[][] = new Button[14][14]。 int visitTest[][] = new int[14][14]。 Label timeLabel = new Label()。 Thread timeThread = new Thread(runnable)。 long usedTime。 myPanel panel。 recordlist list = new recordlist()。 JButton aboutButton。 //類(lèi)的屬性 void createWindow(){ //創(chuàng)建基礎(chǔ)框架 mainframe = new JFrame(掃雷 )。 //框架及面板 startButton = new JButton()。 (new Font(楷書(shū),15))。 (new startListener())。 (關(guān)于 )。 (false)。 recordButton = new JButton()。 (new Font(楷書(shū) ,15))。 (false)。 ()。 ()。 ()。 (startButton)。 (recordButton)。 (aboutButton)。 (450, 340)。 (JFra)。
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1