9)贪吃蛇步骤(初始化)

1)那个 WM_CREATE  -->是在创建窗口的时候调用的,所以这块是用来初始化的。

2)注意,只要是建立新的WIn32项目  就要初始化那个字符集

      9)贪吃蛇步骤(初始化)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

      9)贪吃蛇步骤(初始化)

3)初始化代码 要在 WM_CREATE 这个里面写

      

 1     switch(uMsg)
 2     {
 3         //这个WM_CREATE是用来初始化的,是在窗口创建前调用的。
 4     case WM_CREATE://初始化
 5         //比如创建蛇CreateSnake();
 6         //比如创建豆 CreateBean()
 7         //这样  当我的窗口创建的时候,我的蛇和豆都已经创建出来了
 8         break;
 9     case WM_KEYDOWN://键盘按键按下
10         break;
11     case WM_TIMER://定时器
12         break;
13 
14     case WM_CLOSE://点那个×,窗口关闭
15         ::PostQuitMessage(0);//消息推出
16         break;

4)然后窗口一出来  这个蛇和豆就得显示出来,所以 要在那个重绘里面  调用显示函数:

1 case WM_PAINT:
2         //所以腰要在这个重绘里面显示  蛇和  豆
3         //showSnake()
4         //showBean()
5         break;

5)总的switch代码展示:

 1 switch(uMsg)
 2     {
 3         
 4 
 5 //这个WM_CREATE是用来初始化的,是在窗口创建前调用的。
 6     case WM_CREATE://初始化
 7         //比如创建蛇CreateSnake();
 8         //比如创建豆 CreateBean()
 9         //这样  当我的窗口创建的时候,我的蛇和豆都已经创建出来了
10         break;
11 
12 
13         //接下来就是窗口创建出来 显示我的蛇和豆,就是WM_PAINT
14     case WM_PAINT:
15         //所以腰要在这个重绘里面显示  蛇和  豆
16         //showSnake()
17         //showBean()
18         break;
19 
20 
21     case WM_KEYDOWN://键盘按键按下
22         break;
23     case WM_TIMER://定时器
24         break;
25 
26     case WM_CLOSE://点那个×,窗口关闭
27         ::PostQuitMessage(0);//消息推出
28         break;
29     
30     
31 
32     }

6)然后  就是玩了,就是设置定时器  叫那个蛇 不停的跑

1 case WM_TIMER://定时器
2         //Run();
3                 //跑一步,就得判断能不能吃豆
4         //IsEatBean();
5                 //如果能吃豆,就可以长大,
6         //GrowUp();
7                 //要是不能吃豆,就撞死
8         //IsDie()
9         break;

7)当我按下键盘的时候  就是给一个方向。

1 case WM_KEYDOWN://键盘按键按下
2 //给这个方向赋值
3         int  FX;
4         
5         break;