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

正文內容

畢業(yè)論文-基于java的魔板游戲的設計與開發(fā)(編輯修改稿)

2024-09-06 23:13 本頁面
 

【文章內容簡介】 BlockPoint(int,int):無類型 getY():intisHaveBlock():boolean equals(TowerPoint):BooleansetHaveBlock(boolean):void setBlock(Block):voidgetX():int getBlock():BlockPointPuzzlePad point:Point[][]圖11 Point類的UML圖以下是UML圖中有關數(shù)據(jù)和方法的詳細說明。1)成員變量l x和y是Point對象中的兩個int類型數(shù)據(jù),分別用來表示容器坐標系中的x軸坐標和y軸坐標值。l haveBlock是boolean型數(shù)據(jù),如果有Block對象在該Point對象上時,該數(shù)據(jù)為true;否則為false。l block是Block類聲明的對象,用來存放一個Block對象的引用,標明該Block對象在當前point對象上。2)方法l Point(int ,int)是構造方法,用來創(chuàng)建Point對象。l Point對象調用isHaveBlock()方法返回一個boolean型數(shù)據(jù),如果當前Point對象上有Block對象,isHaveBlock()方法返回true;否則返回false。l Point對象調用setHaveBlock(boolean)方法可以根據(jù)參數(shù)的值設置當前point對象上是否有block對象。l Point對象調用getX()和getY()方法可以返回其中的x軸坐標和y軸坐標。l Point對象調用equals(TowerPoint)方法可以判斷當前point對象是否和參數(shù)指定的point對象相同。l Point對象調用setBlock(Block)方法,將參數(shù)指定的Block對象放置在當前point對象上。l Point對象調用getBlock()方法可以返回當前point對象上的Block對象。 HandleImage類q 效果圖HandleImage創(chuàng)建的對象負責將一幅圖像分解為諾干個小的圖像,沒有可顯示的效果圖。q UML圖 ,創(chuàng)建的對象handleImage負責將一幅圖像分解成諾干幅小圖像,是PuzzlePad類的重要成員之一。HandleImage類的主要成員變量和方法以及和PuzzlePad類之間的組合關系的UML圖像如圖12所示。JComponentHandleImageimageWidth,imageHight:inttool:ToolkitHandleImage():無類型getIages(Image,int,int):Image[]PuzzlePadhandleImage:handleImage圖12 HandleImage類的UML圖以下是UML圖中有關數(shù)據(jù)和方法的說明。1) 成員變量l imageWidth和imageHeight是int型數(shù)據(jù),用來存儲圖像的寬和高。l tool是Toolkit對象,用來獲得Image對象。2) 方法l HandleImage()是構造方法,負責完成HandleImage對象的初始化。l getImages(Image,int,int)方法將參數(shù)指定的圖像分成諾干個更小的圖像,并將這些圖像存放到一個Image數(shù)組中,然后返回該數(shù)組。3) 代碼() HangleMove類 效果圖andleMove創(chuàng)建的對象效果如圖13所示。圖13 HandMove創(chuàng)建的對象 UML圖,并實現(xiàn)了MouseListener和ActionListener接口,創(chuàng)建的對象handleMove是PuzzlePad類的成員之一,負責監(jiān)視PuzzlePad類中的Block對象上的鼠標事件。當用戶用鼠標單擊Block對象后,handleMove對象負責給出移動Block對象有關的算法,并顯示用戶的時間。標明HandleMove要成員變量、方法以及和PuzzlePad類之間組合關系的UML圖如圖14所示。JPanelMouseListenerActionListenerHandleMovepoint:Point[][] showTime:JTextFieldspendTime:int verifSuccessrecordTime:TimerHandMove():setPoint(Point[][]):voidintSpendTime():voidsetVerifySuccess(VerifySuccess):viodactionPerformed(ActionEvent):voidmousePressed(MouseEvent e):voidmouseReleased(MouseEvent e):voidPuzzlePadhandleMove:HandleMove圖14 HandleMove類的UML圖以下是UML圖中有關數(shù)據(jù)和方法的詳細說明 成員變量l Point是Point類型二維數(shù)組,用來存放PuzzlePad魔板容器中point數(shù)組的引用l SpendTime用來記錄用戶玩魔板游戲的用時l recordTime是計時器l showTime是JTextField創(chuàng)建的文本框,負責顯示用時l verify是VerifySuccess聲明的對象,用來存放PuzzlePad魔板中verifySuccess對象的引用。方法l HandleMove()是構造方法,負責創(chuàng)建handleMove對象l handleMove對象調用setPoint(Point[][])方法將PuzzlePad魔板容器的point對象的引用傳遞給該對象中的point,以便handleMove移動PuzzlePad魔板容器中的Block對象l handleMove對象調用setVerifySuccess(VerifySuccess)方法將PuzzlePad魔板容器的verifySuccess對象的引用傳遞給該對象中的verify,verify對象負判斷魔板中的Block對象是否成功地按要求排列完畢l handleMove對象調用initSpendTime()將spendTime的值設置為0l mousePressed(KeyEvent)方法是HandleMove類實現(xiàn)的MouseListener借口中的方法,當在Block對象上按下鼠標左鍵時,將觸發(fā)MouseEvent鍵盤事件,handleMove對象將調用執(zhí)行mousePressed(KeyEvent)方法對事件作出處理,即根據(jù)規(guī)則移動block對象l mouseReleased(MouseEvent)方法是HandleMove類實現(xiàn)的MouseListener借口中的方法,當用在Block對象上釋放鼠標左鍵時,將觸發(fā)MouseEvent鍵盤事件,handleMove對象將調用執(zhí)行mouseReleased(MouseEvent)方法對事件作出處理,其主要操作時判斷用戶是否已經(jīng)成功地將Block對象按要求排列完畢l actionPerformed(ActionEvent)是HandleMove類實現(xiàn)的ActionListener借口中的方法。我們使用Timer類的構造法國法Timer(int a,Object b)創(chuàng)建了計時器recordTime,其中的參數(shù)a的單位是毫秒,確定計時器每隔a毫秒“振鈴”一次,參數(shù)b是計時器的監(jiān)視器。在這里我們取a=1000,監(jiān)視器b是當前handleMove對象。計時器方式的振鈴事件是ActionEvent類型事件,當振鈴事件發(fā)生時,監(jiān)視器就會監(jiān)視到這個事件,監(jiān)視器就調用actionPerformed(ActionEvent)方法。當振鈴每隔1000毫秒發(fā)生一次時,方法actionPerformed(ActionEvent)就被執(zhí)行一次,所執(zhí)行的操作就是現(xiàn)實用戶當前的用時。 VerifySuccess類 效果圖沒有可見的效果圖。 UML圖VerifySuccess創(chuàng)建的對象負責驗證用戶是否按要求成功排列魔板中的方塊,創(chuàng)建的對象verifySuccess是PuzzlePad類的重要成員之一。標明VerifySuccess類的主要成員變量和方法以及和PuzzlePad類之間組合關系的UML圖15所示。point:Point[][]object:Object[]PuzzlePadVerifySuccessverifySuccess:VerifySuccesssetPoint(Point[][]):voidsetObject(Object[]):voidisSuccess():boolean圖15 VerifySuccess類的UML圖以下是UML圖中有關數(shù)據(jù)和方法的詳細說明。1) 成員變量l point是Point類型二維數(shù)組,用來存放PuzzlePad魔板容器中point數(shù)組的引用。l object是Object數(shù)組,其單元可以存放任何對象。2) 方法l VerifySuccess對象調用setPoint(Point[][])方法將PuzzlePad魔板中的point對象的引用傳遞給該對象中的pointl VerifySuccess對象調用setPoint(Object[][])方法可以將PuzzlePad魔板容器的Integer數(shù)組或Image數(shù)組的引用傳遞給該對象中的objectl VerifySuccess對象調用isSuccess()方法判斷用戶是否按要求成功排列魔板中的方塊,如果成功isSuccess()方法返回true;否則返回false 第三章 魔板游戲系統(tǒng)的具體實現(xiàn) 游戲主類的設計 主類主要定義了游戲界面的布局,以及調用的一些類來實現(xiàn)游戲的進行。其主要的效果圖展示即為:核心代碼展示:public PuzzleGame(){ tool=getToolkit()。//創(chuàng)建一個菜單條 bar=new JMenuBar()。 gradeMenu=new JMenu(選擇級別)。//建立指定標題為“選擇級別”的菜單 choiceImage=new JMenu(選擇圖像)。//建立指定標題為“選擇圖像”的菜單 oneGrade=new JMenuItem(初級)。//建立指定標題為“初級”的菜單選項 twoGrade=new JMenuItem(高級)。//建立指定標題為“高級”的菜單選項 newImage=new JMenuItem(選擇一幅新圖像)。//建立指定標題為“選擇一幅新圖像”的菜單選項 defaultImage=new JMenuItem(使用默認圖像)。//建立指定標題為“使用默認圖像”的菜單選項 (oneGrade)。//向gradeMenu添加由參數(shù)oneGrade指定的菜單選項對象 (twoGrade)。//向gradeMenu添加由參數(shù)twoGrade指定的菜單選項對象 (newImage)。//向choiceImage添加由參數(shù)newImage指定的菜單選項對象 (defaultImage)。//向choiceImage添加由參數(shù)defaultImage指定的菜單選項對象 (gradeMenu)。//向bar菜單條添加由參數(shù)gradeMenu指定的菜單選項對象 (choiceImage)。//向bar菜單條添加由參數(shù)choiceImage指定的菜單選項對象 setJMenuBar(bar)。//設置菜單條里面的組件 魔板對象的實現(xiàn)該游戲由數(shù)字或者圖像兩種選擇。同時,又有高級和級低的游戲選擇,因此我們需要通過一個程序來實現(xiàn)魔板的生成以及對象的實現(xiàn)。生成的魔板顯示為: 主要代碼: public void setIsDigitPlay(){//將魔板設置為數(shù)字玩法 needInit()。 isDigitPlay=true。//當魔板玩法是數(shù)字玩法時 ArrayListInteger numberList=new ArrayListInteger()。//創(chuàng)建方格的數(shù)字對象 for(int k=0。km*n1。k++){ (k+1)。 } Object []object=()。 (object)。 (numberList)。 //隨機排列數(shù)字 int k=0。 for(int i=0。im。i++){ if(im1) for(int j=0。jn。j++){ block[i][j].setObject((k))。 k++。 } else for(int j=0。jn1。j++){ block[i][j].setObject((k))。 k++。 } } repaint()。 }魔板中每一個小塊的形成以及圖片分割之后的對象的實現(xiàn):效果如圖: 主要代碼顯示:public void setO
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1