C++图形界面贪吃蛇设计+源代码
需求分析
程序运行截图
开始   
7.2  概要设计
7.3  详细设计与编码
见上传程序。
7.4  调试分析
程序是在网上下载的,只需认真看懂,在java程序下运行就行了。
7.5  用户使用说明
根据界面提示,输入想要的数据。
  7.6  设计心得
虽然程序是在网站上下载的,但根据程序类容可以看出,图形界面的题目的基础还是平常的那些基础题。
import java.awt.*; 
import java.awt.event.*; 
public class GreedSnake //主类 
{ 原文请找腾讯752018766辣.文-论'文;网http://www.751com.cn
/** 
* @param args 
*/ 
public static void main(String[] args) { 
// TODO Auto-generated method stub 
new MyWindow(); 
}
} 
class MyPanel extends Panel implements KeyListener,Runnable//自定义面板类,继承了键盘和线程接口 
{ 
Button snake[]; //定义蛇按钮 
int shu=0; //蛇的节数 
int food[]; //食物数组 
boolean result=true; //判定结果是输 还是赢 
Thread thread; //定义线程 
static int weix,weiy; //食物位置 
boolean t=true; //判定游戏是否结束 
int fangxiang=0; //蛇移动方向 
int x=0,y=0; //蛇头位置 
MyPanel() 
{ 
setLayout(null); 
snake=new Button[20]; 
food=new int [20]; 
thread=new Thread(this); 
for(int j=0;j<20;j++) 
{ 
food[j]=(int)(Math.random()*99);//定义20个随机食物 
} 
weix=(int)(food[0]*0.1)*60; //十位*60为横坐标 
weiy=(int)(food[0]%10)*40; //个位*40为纵坐标 
for(int i=0;i<20;i++) 
{ 
snake[i]=new Button(); 
} 
add(snake[0]); 
snake[0].setBackground(Color.black); 
snake[0].addKeyListener(this); //为蛇头添加键盘监视器 
snake[0].setBounds(0,0,10,10); 
setBackground(Color.cyan); 
} 
public void run() //接收线程 
{ 
while(t) 
{ 
if(fangxiang==0)//向右 
{ 
try 
{ 
x+=10; 
snake[0].setLocation(x, y);//设置蛇头位置 
if(x==weix&&y==weiy) //吃到食物 
{ 
shu++; 
weix=(int)(food[shu]*0.1)*60; 1821