| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2432 人关注过本帖
标题:利用WINDOWS编程中的GDI编写小球碰撞游戏
只看楼主 加入收藏
baileibaba
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2009-7-6
结帖率:0
收藏
已结贴  问题点数:10 回复次数:5 
利用WINDOWS编程中的GDI编写小球碰撞游戏
利用WINDOWS编程中的GDI编写下列游戏。每按一下空格键,屏幕中心处出现一个小球,屏幕上最多可以出现10个小球,小球按照不同的规则移动,当碰到屏幕边缘的时候换方向,小球碰到屏幕5次后消失,当有一个小球消失,又可以按空格键,再此出现一个。

做了一会老是一个小球碰5次后消失,刚学没有太多的思路了,请高手帮帮忙.先谢过!

小球.rar (266.77 KB)
搜索更多相关主题的帖子: GDI 小球 WINDOWS 游戏 编写 
2009-07-29 00:14
苏泽
Rank: 1
等 级:新手上路
帖 子:7
专家分:7
注 册:2009-8-5
收藏
得分:3 
怎么我运行出来是黑色的。??
根本看不到什么。   
2009-08-05 22:23
soky
Rank: 4
等 级:业余侠客
帖 子:126
专家分:228
注 册:2009-7-13
收藏
得分:3 
只能出现一个小球
2009-08-12 01:28
xufen340
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:166
专家分:1351
注 册:2009-8-7
收藏
得分:3 
这个程序一开始结构就设计得不好,后面思路也不正确。
你可以先用vc6生成一个简单的win32程序来看。
一基本结构是:
1.WinMain入口函数。
2.MyRegisterClass注册窗口函数。(在WinMain中调用)
3.InitInstance创造窗口并显示。(在WinMain中调用)
4.WndProc窗口过程,用来捕捉消息,并执行事件。
所以在WinMain中就是下面情况:
 
WinMain
{
   MyRegisterClass;
   InitInstance;
   (GetMessage)or(PeekMessage);//这里是捕捉消息。
}
MyRegisterClass(){}
InitInstance(){}
WndProc(){}
二:捕捉消息后如何响应,其实就是消息来了如何调用程序。
在WndProc中调用
WndProc()
{
    case 某某消息:
        调用执行的函数;
}
比如你这个游戏:
WndProc()  
{  
。。。。。。。。。
    case VK_SPACE::  
        ball();//调用球类碰撞动画
。。。。。。。
}
ball(){}
三:peekmessage和getmessage的区别
你这个程序只要getmessage就可以,peekmessage不需要。在WinMain中如下:
     while (GetMessage (&messages, NULL, 0, 0))  
    {  
        /* Translate virtual-key messages into character messages */  
        TranslateMessage(&messages);  
        /* Send message to WindowProcedure */  
        DispatchMessage(&messages);  
    }  
    return messages.wParam;
四:球类碰撞动画的思考
变量:
kmaxballnum=10 最多10个小球
ktouchnum=5 最多碰5次
函数:
drawball()//画小球
ballmove(方向,速度)//小球移动
方向 balltouch() //小球撞倒墙壁,返回新方向
removeball()//5次碰撞后擦除小球。

希望对你有帮助
2009-08-12 10:22
xufen340
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:166
专家分:1351
注 册:2009-8-7
收藏
得分:0 
后来我考虑一下,每按空格出现一个球,不超过10个,用getmessage和peekmessage都不能完成,这里恐怕要弄个多线程,每次按空格,产生个线程.
2009-08-13 09:11
xifuzhaoll
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-8-22
收藏
得分:0 
2013-08-24 15:00
快速回复:利用WINDOWS编程中的GDI编写小球碰撞游戏
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017948 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved