回 帖 发 新 帖 刷新版面

主题:获取按键按住时间问题

在win32中,回调窗口过程函数中传入的参数lParam中的0~15位怎样获取,这几个位中记录的是按键的次数,lParam的一些字段也与按键的有关信息有关。我是搞编游戏的菜鸟,想到制作动作游戏中好多功能的实现都是通过一些按键的信息来实现的。
[em10][em10][em10]

回复列表 (共1个回复)

沙发

晕,没学过位操作吗?
#define GETX( l )  ( l & 0xffff )
#define GETY( l )  ( ( l >> 16 ) & 0xffff )
    case WM_LBUTTONDOWN:
        if ( pic.Mode == PICMODE )
        {
            PicHLine.dwY = GETY( lParam );
            PicVLine.dwX = GETX( lParam );
        }
        else
        {
            pic.CurSpriteX = GETX( lParam );
            pic.CurSpriteY = GETY( lParam );
        }
        break;

我来回复

您尚未登录,请登录后再回复。点此登录或注册