|
|
窗口模式,共享,鼠标采用缓冲模式
本意是图片能跟随鼠标一起移动,可是发现只要鼠标移动一快,就不精确了,查了好多资料都没解决
case DIMOFS_X: // X 轴偏移量
x_text=didod.dwData+x_text;
// didod.dwData 里是具体偏移相对值,单位为像素
break;
case DIMOFS_Y: // Y 轴偏移量
y_text=didod.dwData+y_text;
// didod.dwData 里是具体偏移相对值,单位为像素
break;
图片移动
g_pSprite->Begin(D3DXSPRITE_ALPHABLEND);
RECT rct_man;
SetRect( &rct_man,0,0,100,100);
g_pSprite-> Draw(g_pTexture, &rct_man, NULL, &D3DXVECTOR3(x_text,y_text,0),0xffffffff) ;
g_pSprite->End();
解决办法之一是在控制面版的“鼠标”选项里,找到一个叫“提高鼠标精确度”的选项,并且去掉。原因不是DirectInputMouse数据丢失,而是你可能是用的相对模式的鼠标。变成绝对坐标方式就好了。(像CS那样的,虽然看起来是相对的,其实人家用的是绝对模式坐标相减求相对坐标,不像咱们都是相对模式坐标相加求绝对坐标~
上面这个方法可以解决,但是不用这个方法怎么解决呢 [em7] |
|