首页
社区
课程
招聘
[原创]我写的俄罗斯方块,基本完成,源码已经附上
发表于: 2010-6-19 09:25 7791

[原创]我写的俄罗斯方块,基本完成,源码已经附上

2010-6-19 09:25
7791

sdk+api,源码里有少量注释,代码风格和变量名都很不堪
感谢各位帮助测试,谢谢pcasa指教,目前尚未发现问题,欢迎继续测试


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 7
支持
分享
最新回复 (16)
雪    币: 105
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
定义两个变量 hbrushold hpenold
    case WM_PAINT:
      hdc = BeginPaint(hWnd, &ps);
      hbrush=CreateSolidBrush(RGB(240,240,240));//矩形背景色
      hpen=CreatePen(PS_SOLID,2,RGB(50,50,50));//矩形边框色
      hbrushold = SelectObject(hdc,hbrush);//画刷
      hpenold = SelectObject(hdc,hpen);//画笔
      Rectangle(hdc,1,1,300,540);//绘制游戏区域矩形
      Rectangle(hdc,338,40,458,160);//绘制"下一个"矩形
      DeleteObject(SelectObject(hdc,hbrushold));
      hbrush=CreateSolidBrush(RGB(226,121,7));//矩形背景色
      SelectObject(hdc,hbrush);//画刷
      if(gamestatus!=0)
      {
        for(i=0;i<10;i++)
          for(j=0;j<18;j++)
            if(mainmap[i][j]==1) Rectangle(hdc,i*30,j*30,i*30+30,j*30+30);//绘制主棋盘数据
        for(i=0;i<4;i++)
          for(j=0;j<4;j++)
            if(cube[next][0][i][j]==1) Rectangle(hdc,338+i*30,40+j*30,338+i*30+30,40+j*30+30);//绘制"下一个"
      }
      DeleteObject(SelectObject(hdc,hbrushold));
      DeleteObject(SelectObject(hdc,hpenold));
      EndPaint(hWnd, &ps);
      break;
2010-6-19 09:32
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
3
非常感谢,正在测试
我已经被SelectObject、DeleteObject彻底弄晕了
2010-6-19 09:48
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
楼主好强力,当年我只是在arm7上做了一个打砖块的游戏就把我搞的够呛!
2010-6-19 10:06
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
5
问题依旧,不过这次能撑更长时间
2010-6-19 10:16
0
雪    币: 1746
活跃值: (700)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
共享下sourcecode看看
2010-6-19 11:00
0
雪    币: 95
活跃值: (15)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
顶个,不错.....
2010-6-19 11:04
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
8
找到了 我接管了WM_CTLCOLORSTATIC消息
这个消息返回brush句柄可以作为背景色,问题是在这个消息里创建 没办法释放
所以我直接返回了return (long)GetStockObject(WHITE_BRUSH);这次不是我创建的
没问题了
2010-6-19 11:22
0
雪    币: 105
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
9
WM_CTLCOLORSTATIC 返回一个你已经创建好的刷子句柄,而不是每一次调用都返回一个新创建的刷子.
2010-6-19 11:58
0
雪    币: 12
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
前来学习学习
2010-6-19 12:36
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
11
我本来也打算那样,不过不知道该放到哪个消息里
放到WM_CREAT里没效果
2010-6-19 12:46
0
雪    币: 285
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
我也来做下小白鼠~~~~~~~支持动手!
2010-6-20 07:45
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
13
源码已经附上
2010-6-20 09:09
0
雪    币: 105
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
14
保存为全局变量,在WM_CREATE消息时创建刷子.
2010-6-20 09:42
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
15
谢谢 问题已解决
2010-6-20 16:32
0
雪    币: 197
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
都 是编程大师啊,佩服
2010-6-22 16:24
0
雪    币: 780
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
HOME不是随随便便可以按的啊
2010-6-22 16:39
0
游客
登录 | 注册 方可回帖
返回
//