Java贪吃蛇报告

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

J a v a贪吃蛇报告 Revised final draft November 26, 2020

《Java高级编程》课程报告

第xx小组:贪吃蛇游戏项目

小组成员及分工

一、实验环境

操作系统:Windows 7

编程环境:Eclipse、JDK

二、实验内容与完成情况

(主要介绍项目总体功能分析与说明。)

贪吃蛇小游戏的JAVA程序是利用上↑、下↓、左←、右→方向键来改变蛇的运动方向,按空键暂停游戏,按enter键重新开始。长按某个方向键后,蛇的运动速度会加快,在随机的地方产生食物,吃到食物就变成新的蛇体,碰到壁或自身则游戏结束,否则正常进行游戏。以不同的速度和不同方向吃到食物所获得的分数也不相同。

窗口功能说明:设计了三个窗口,分别是游戏主窗口,主菜单窗口,模式选择窗口。菜单栏分别为:游戏菜单(重新开始)和帮助菜单以及返回(返回主菜单)。其中,按返回菜单按钮后会显示主菜单,其包括游戏开始、设置、退出游戏三项按钮选择;如果按

“设置”按钮会进入“模式选择”窗口。而模式选择窗口菜单包括了初级、中级、高级、返回按钮。

1、功能1(主菜单窗口)

(1)主菜单窗口主要是提供“游戏开始”、“设置”和“退出”按钮。“游戏开始”按钮按下后会进入“游戏主窗口”开始游戏;“设置”按钮是调用

“模式选择”窗口对游戏贪吃蛇的速度进行设置;“退出”按钮按下则会

直接退出游戏。

(2)功能1实现的流程图

实现的效果图如下:

(3)功能1(主菜单窗口)代码:

package Swing;

import ;

import ;

import ;

import ;

import ;

import ;

import ;

import ;

import ;

import ;

import ;

public class setMenu extends JFrame {

private int speed1 = 200;

public static int speed = 200;

// static int speed = 20;

private JPanel contentPane;

/**

* Launch the application.

*/

public static void main(String[] args) {

EventQueue.invokeLater(new Runnable() {

public void run() {

try {

setMenu frame = new setMenu(speed);

frame.SsetMenu(frame);

frame.setVisible(true);

} catch (Exception e) {

e.printStackTrace();

}

}

});

}

/**

* Create the frame.

*/

public setMenu(int speed2){

speed1=speed2;

(speed2);

}

public void SsetMenu(final setMenu frame) {

setTitle("主菜单");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setBounds(100, 100, 250, 350);

contentPane = new JPanel();

contentPane.setBackground(new Color(102, 204, 102));

contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

setContentPane(contentPane);

contentPane.setLayout(null);

//按钮:游戏开始

JButton NewGameButton = new JButton("");

NewGameButton.setIcon(new ImageIcon("img/gamebegin.png"));

NewGameButton.setBounds(53, 52, 123, 40);

NewGameButton.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

Game gs = new Game(speed1);

frame.dispose();

}

});

contentPane.add(NewGameButton);

//按钮:游戏设置

JButton setButton = new JButton("");

setButton.addMouseListener(new MouseAdapter() {

@Override

public void mouseClicked(MouseEvent e) {

model frame1 = new model();

frame1.Mmodel(frame1);

frame1.setVisible(true);

frame.dispose();

}

});

//按钮图片设置

setButton.setIcon(new ImageIcon("img/set.png"));

setButton.setBounds(53, 128, 123, 45);

相关文档
最新文档