原本計劃緊張忙碌的考試月在圖書館和實驗室度過,結果突如其來為期兩周的軟體設計把課餘時間幾乎捆綁在了機房。軟設沒有太多知識上的要求,只要成品簡潔美觀、實用準確即可。考慮了很久決定要用Java swing做一個完善的連連看小游戲。 (一)工作計劃安排: 1.16周完成游戲界面的製作以及圖形消除功能的實現 ...
原本計劃緊張忙碌的考試月在圖書館和實驗室度過,結果突如其來為期兩周的軟體設計把課餘時間幾乎捆綁在了機房。軟設沒有太多知識上的要求,只要成品簡潔美觀、實用準確即可。考慮了很久決定要用Java swing做一個完善的連連看小游戲。
(一)工作計劃安排:
1.16周完成游戲界面的製作以及圖形消除功能的實現。
2.17周完成連線的顯示以及菜單功能的實現(退出、再來一局等功能),併進行界面及性能的優化。
今天第一天確定了具體的實施方案,決定了游戲界面要達到的效果,並開始著手製作游戲首頁的界面。
(二)目前進度
目前完成第一個界面的製作,背景圖片是航拍的學校夜景。想到去年用Qt做的小游戲界面太low,因此這次想做得稍微高大上一些。游戲計劃分為多個等級,其中第一等級的圖形由編程語言、相關軟體的logo組成,後面等級的圖形初步計劃可以分為男生喜歡的游戲形象及女生喜歡的影視形象,如果考慮受眾面的話可以設置多種情景供選擇,不過這樣的話軟體就會很複雜,根據具體實施情況及時間確定情景選擇功能是否添加。
(三)開發過程
第一個界面的製作很容易,只需要添加背景圖片和按鈕即可。在查找相應函數時偶然發現可以設置視窗圖標,於是簡單添加了校徽。
//視窗圖標
static JFrame frame1=new JFrame("工大連連看"); Toolkit tool=frame1.getToolkit(); Image image1=tool.getImage("E:\\學習\\Sophomore\\軟體設計\\picture\\hit.jpg"); frame1.setIconImage(image1);
背景圖片的添加花費了比較長的時間,原因是一開始打算直接用JLabel添加圖片,但是由於圖片不能縮放,只能顯示出一部分。後來打算改用JPanel寫背景的方法,但是重新製作了一個背景圖之後發現新的背景圖不需要縮放就能直接使用JLabel。因此就沿用了JLabel。
//插入背景圖片
frame1.setLayout(null);//否則不會顯示圖片 ImageIcon img=new ImageIcon("E:\\學習\\Sophomore\\軟體設計\\picture\\frame.jpg"); JLabel imglabel=new JLabel(img); frame1.add(imglabel); imglabel.setBounds(0,0,800,450);//也可以適應圖片的寬度和高度,我是直接設置好了
下麵就是插入按鈕開始游戲,按鈕的插入很簡單不需要贅述了,不足就是button不夠美觀。
//設置開始按鈕 JButton begin_index=new JButton("開始冒險"); frame1.add(begin_index); begin_index.setBounds(300,350,150,40); begin_index.setBackground(Color.white); begin_index.setFont(new Font("Dialog",1,20));
最後設置frame大小及可見。至此第一個界面就完成了,明天繼續做游戲界面。
frame1.setSize(810,490); frame1.setVisible(true);
(四)效果
圖片清晰度有待提高,大概是因為強行被增大。
有錯誤歡迎指出或討論哦~
還有祝我明天的2000m體測順利跑下來!