上一節(jié):跟我學(xué)Java Swing之游戲設(shè)計(1) 還記得《偷天換日》中精靈般穿梭在好萊塢車流中的Minicooper嗎?馬克·沃爾伯格和莎莉·賽隆就是駕駛著它在仇人的鼻子底下運走了價值千萬的黃金。可是,如果現(xiàn)在將一輛無法奔馳的Minicooper軀殼放在你的面前,你會如何看待它?它還是那個游走自如的精靈嗎?今天,就讓我們一點一點地為這輛Minicooper組裝上零件,讓它跑起來。 前言 從本期開始,我們?yōu)榇蠹姨峁┩暾挠螒蛟创a(點擊下載)。Java咖啡館倡導(dǎo)大家理論與實踐并重,我們在連載中將給大家介紹關(guān)鍵技術(shù)以及實現(xiàn)思路,朋友們自行結(jié)合文章閱讀源代碼,好比一邊讀報一邊喝咖啡,這才是滴滴香濃意猶未盡。 游戲布局 “連連看”屬于一款二維戰(zhàn)棋類游戲,要設(shè)計棋盤類的游戲,GridLayout應(yīng)該是不二之選。現(xiàn)在讓我們一起來看看GridLayout的構(gòu)造函數(shù): ·GridLayout():默認的情況下,將布局區(qū)域劃分為1*1的大小 千萬別讓這三個構(gòu)造函數(shù)把你給嚇住了,其實只要你喜歡,完全可以放心大膽地使用其中的任何一個,就算不小心用“錯”了,以后也有辦法進行調(diào)整。惟一需要注意的是,GridLayout在添加控件時,默認順序是從左上方向右下方依次添加的。 現(xiàn)在讓我們來確定游戲的格子數(shù)目。究竟多少格子比較合適呢?太少會降低游戲的難度,太多又會造成視覺影響。所以,我們應(yīng)該通過一對常量來表示,將來即使要修改,也是舉手之勞。 在Java中,常量的定義需要寫成public final static的形式,假如我們規(guī)定游戲的棋盤在橫向有8個格子,縱向也有8個格子,那么,我們應(yīng)該這樣定義: public final static int ROW = 8; 然后,我們使用GridLayout的第二種構(gòu)造函數(shù)來創(chuàng)建布局: GridLayout gridLayout = new GridLayout(ROW, COLUMN); 最后,我們還需要將游戲區(qū)(contentPanel)的布局改為上述布局: contentPanel.setLayout(gridLayout); 如果你此時編譯并運行程序的話,你可能會奇怪:界面怎么沒有發(fā)生任何改變,是不是哪出錯了?雖然我們指定了布局,可是什么控件也沒有添加,當然就看不出變化,F(xiàn)在讓我們一起在布局上添加按鈕吧: for (int i = 0; i < ROW * COLUMN; i++) { 再運行程序試試,是不是和我的一樣(見圖1)?
|
正在閱讀:跟我學(xué)Java Swing之游戲設(shè)計(2)跟我學(xué)Java Swing之游戲設(shè)計(2)
2005-10-14 10:46
出處:
作者:張劍
責任編輯:xietaoming
鍵盤也能翻頁,試試“← →”鍵
302 Found
Powered by Tengine