程序中,我希望能够像我希望像极品飞车等游戏那样,按下"w"时持续响应一个消息;如果同时按下"w+s"时,响应"s"的消息;松开"s",又继续响应"w"的消息。在MFC程序中该如何实现?谢谢各位指点。

解决方案 »

  1.   

    游戏中一般用DirectInput,在MFC你可以处理键盘消息wm_keydown
      

  2.   

    用WM_KEYDOWN和WM_KEYUP在控制流程上比较复杂,但是是可行的办法
      

  3.   

    一般在KEYDOWN消息里,把一个(或几个)标志置为TRUE,在KEYUP消息里,把一个(或几个)标志置为FALSE。然后在绘图代码中判断这个标志或这些标志的组合,比较简单。
      

  4.   

    DirextInput Sample-keyboard 你看看就知道。
      

  5.   

    DirextInput Sample-keyboard 你看看就知道。
      

  6.   

    我尝试了WM_KEYDOWN和WM_KEYUP,确实很复杂.
    准备用DirectInput尝试下
      

  7.   

    DX 8.0 SDK中有详细的代码
      

  8.   

    POSTMESSAG尝试过,但我没能实现.还望lwsogood详细指点.
    采用directinput,编译DirextInput Sample-keyboard正确,但是自己写的调试程序,设置一直不正确.用他编程需要添加那些头文件和库文件?还请各位详细说明.
      

  9.   

    一切搞定,用DirextInput实现了我希望的功能,很方便.
    给分,谢谢各位的指点.