使用Java Swing開發的2048小遊戲

完整工程源碼:https://github.com/Melonl/Swing2048

使用idea開發,用了Java swing組件來實現ui,源碼裏有很詳細的註釋。

實際運行效果:

最初是爲了應付課程設計而寫的,在寫的時候想找些源碼參考發現網上沒幾個用swing實現的2048源碼,有幾份還是要錢的,現特將此源碼無償分享出來給後來有需求的朋友參考。下面說下大體的實現思路。

 

首先,拋開簡陋的開始界面不談,直接說遊戲界面,我使用了4x4的GridLayout作爲佈局,然後使用16個JLabel作爲方塊ui。數據上則是使用一個長度爲16的int數組儲存方塊的數值,通過監聽上下左右的按鍵進行相應的數據處理,最後通過刷新函數將數據顯示出來並設置顏色。這裏提一下勝負判定的實現,勝的判定很簡單,就是玩家湊出了至少一個2048的方塊即爲勝利,而失敗的判定思路略複雜,主要是通過模擬用戶分別按下上、下、左、右鍵後,判斷格子裏是否還有空位,如分別向四個方向移動後都無法產生空位,則判負。具體的代碼實現請參考源碼,有疑問可在評論區提出,不定時回覆。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章