本次的应用案例用到为WPF 应用
需要解决的问题(过程)
1.创建蛇 这里我们可以封装一个方法(私有的)用来装蛇的头部和身体 为蛇设置初始出现的位置已及初始的移动方向
2.创建食物 也封装一个方法(私有的)用来装食物 食物应该随机的出现在游戏界面的任何地方
3.创建键盘事件用键盘的方向键来控制蛇的(上下左右)移动,并用计时器来控制蛇的移动
4.创建游戏开始和暂停的按钮 用来控制蛇移动的计时器的开和关
5.当蛇的头部碰撞到食物时,将食物随机到其他位置并为蛇创建一节新的身体(相当于蛇吃掉食物增加身体长度)
6.当蛇的头部碰到了游戏界面的边界或自己的身体时,暂停游戏并给出提示(撞到了墙…咬到了自己…)
7.创建label控件记录所得的分数(所吃的食物数)
游戏界面展示
代码展示
为保证程序的正常运行将以下代码写在全局中
int size = 20; //设置大小
DispatcherTimer movetimer = new DispatcherTimer(); //创建计时器
Button ks = new Button(); //创建开始按钮
List<Border> snake = new List<Border>(); //<>表示泛型 //括号中可以是任意类型 list表示集合
int df = 0; //记录得分
Border food = new Border(); //创建食物
Label defen = new Label(); //创建label积分板
int gezix = 50;
int geziy = 30;
Random ra = new Random(); //创建随机对象
设置 MainWindow
this.WindowStyle = WindowStyle.None; //设置窗体无边框样式
this.AllowsTransparency = true; //允许窗体透明
设置窗体的属性(在加载事件中设置)
this.Background = Brushes.Transparent; //设置窗体的背景颜色为透明
this.WindowState = WindowState.Maximized; //将窗体最大化
jiemian.Background = new RadialGradientBrush(Colors.White,Colors.Yellow); //将canvas的背景颜色为环形渐变
创建蛇
//封装一个方法 创建蛇的对象 私有的
private void CreateSnake()
{
//创建初始的4节蛇身
for (int i = 0; i < 4; i++)
{
Border br = new Border();
br.Width = size;
br.Height = size;
br.Tag = "Right";
//区别蛇的头(红)和身体(粉)
if (i==0)
{
br.Background = Brushes.Red