cybersword
纵死侠骨香 不惭世上英
博客园
社区
首页
新随笔
联系
管理
订阅
随笔- 18 文章- 0 评论- 18
2012年1月29日
游戏设计手札06
今天遇到的问题:
因为是全屏游戏,为了方便地图的显示,进入游戏时修改了系统分辨率,可是之后发现,这样一来第一个显示的页面闪一下后会被黑屏覆盖掉,之后要通过键盘触发相应的消息响应才能继续之后的显示。
有时候按一下回车会产生连续按两下的效果。
解决的方法是:
修改系统分辨率的代码需要放在窗口注册以后,否则会编译出错;并且要放在窗口创建之前,否则会出现上面提到的问题。
在消息响应时添加了一个定时器,添加了一个全局变量waittime,初始时waittime = 0,收到按键的消息时,判断waittime的值是否为0。如果是,就执行相应处理函数,并启动定时器,设waittime值为1;如果不为0,则直接break返回。当收到定时器消息WM_TIMER时,销毁定时器,并置waittime为0,这样便能防止连续按键盘,我设置的定时器时间为500ms。其实跟单片机处理键盘的方法大同小异。
posted @ 2012-01-29 00:22 cybersword 阅读(60) 评论(2)
编辑
公告