1)那个 WM_CREATE -->是在创建窗口的时候调用的,所以这块是用来初始化的。
2)注意,只要是建立新的WIn32项目 就要初始化那个字符集
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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;