关于SDK编程的.一个打地鼠游戏问题

牛不得 2006-01-16 08:50:26
我现在已经把一个鼠坑通过FOR循环,在窗体中央变出了9个来.3行3列.
可是我现在想要把地鼠的小图片随机替换这九个鼠坑的图片.该怎么做啊?
最好有代码参考啊~思路很简单,我现在就是烦该怎么实现.
因为刚学,实在很菜,请大家慷慨帮忙哦!
...全文
109 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
handsomerun 2006-01-16
  • 打赏
  • 举报
回复
……………………
……………………
不客气,大家一起学习
学sdk的话,
看看
windows程序设计
这本书很不错,有机会去一定要好好看看
牛不得 2006-01-16
  • 打赏
  • 举报
回复
我看明白了!~准备结贴了,再次感谢啊(以后要是再问问题"多谢"我可就省了哈~不然你可就听腻了,呵呵)
牛不得 2006-01-16
  • 打赏
  • 举报
回复
多谢多谢!前天我在问SDK的问题哪里问的时候也是你说的呀!
handsomerun 2006-01-16
  • 打赏
  • 举报
回复
随机种子

以当前的时间作为随机种子


The srand function sets the starting point for generating a series of pseudorandom integers. To reinitialize the generator, use 1 as the seed argument. Any other value for seed sets the generator to a random starting point. rand retrieves the pseudorandom numbers that are generated. Calling rand before any call to srand generates the same sequence as calling srand with seed passed as 1.



你可以试一下,如果你以一个特定的常量数作为随机种子,那么出来的数都是一样的
handsomerun 2006-01-16
  • 打赏
  • 举报
回复
再给你一段贴图的代码

//将位图选进设备场景中
HDC memdc;
memdc = CreateCompatibleDC(hDC);
HBITMAP hOldMap = SelectObject(memdc ,hBitMap);

然后通过BitBlt把memdc的内容考到hDC里面

注意一下坐标,以及图片的大小

这里,hDC是你窗体的dc 可以通过getdc获得
hBitMap 是你位图的句柄
可以通过LoadImage或者LoadBitmap获得
牛不得 2006-01-16
  • 打赏
  • 举报
回复
这个我看过了,.你能说说srand( (unsigned)time( NULL ) );这里面的TIME 是什么用的么?
我就是不明白.
handsomerun 2006-01-16
  • 打赏
  • 举报
回复
先给你一段关于随即数方面的例子
msdn上,照着用就可以了


Example
/* RAND.C: This program seeds the random-number generator
* with the time, then displays 10 random integers.
*/

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

void main( void )
{
int i;

/* Seed the random-number generator with current time so that
* the numbers will be different every time we run.
*/
srand( (unsigned)time( NULL ) );

/* Display 10 numbers. */
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand() );
}

Output
6929
8026
21987
30734
20587
6699
22034
25051
7988
10104

牛不得 2006-01-16
  • 打赏
  • 举报
回复
这个我知道啊,关键是实现过程还是很茫然.因为动手写过的程序不多.
对了,那随机数怎么弄,我看过一些代码,可不明白SRAND和RAND,为什么要两个函数?怎么用的?
而且哪个用在哪里?有点晕.
handsomerun 2006-01-16
  • 打赏
  • 举报
回复
你可以通过把图片load以后
放在内存dc里面
然后等到要画的时候

通过bitblt,把图片画到对应的位置上去

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧