首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >方块处理(2) ---十天教会你俄罗斯方块

方块处理(2) ---十天教会你俄罗斯方块

作者头像
用户2965768
发布2018-08-30 16:06:09
发布2018-08-30 16:06:09
5160
举报
文章被收录于专栏:wymwym

一.定时器

启动定时器

UINT_PTR SetTimer(HWND hWnd,UINT_PTR nlDEvent,

UINT uElapse,TIMERPROC lpTimerFunc)

返回值:成功返回非零

参数1:窗口句柄hWnd

参数2:定时器ID

参数3:间隔时间,毫秒

参数4:处理函数的地址,如果为NULL则定时产生WM_TIMER消息

关闭定时器

BOOL KillTimer(HWND hWnd,UINT_PTR ulDEvent);

返回值:成功返回非0,失败返回0

二.键盘消息

case WM_KEYDOWN:

         switch(wParam){

               case VK_RETURN:

             OnReturn(hWnd);

            break;

            case VK_LEFT:

            break;

            case VK_RIGHT:

                break;

            case VK_UP:

                break;

                case VK_DOWN:

                    break;

}

break;

void OnReturn(HWND hWnd){SetTimer(hWnd,N_TIMER,T_TIMER,NULL);}

case WM_DESTROY:KillTimer(hWnd,N_TIMER);PostQuitMessage(0);break;

三.方块下落

void SquareDown(){ int i = 0; int j = 0; for(i=G_ARR_ROW-2;i>=0;i--) { for(j=0;j<G_ARR_RANK;j++) { if(1==g_arrBackGround[i][j]) { g_arrBackGround[i+1][j] = g_arrBackGround[i][j]; g_arrBackGround[i][j] = 0; } } }

}

void OnTimer(HWND hWnd){

//获取DC

HDC hDC = GetDC(hWnd);

// 方块下落

SquareDown();

// 显示方块

OnPaint(hDC);

//释放DC

ReleaseDC(hWnd,hDC);}

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018年07月10日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档