スレを勃てるまでもないC/C++の質問はここで 13
■ このスレッドは過去ログ倉庫に格納されています
0893デフォルトの名無しさん
2010/03/15(月) 18:29:23DirectXInputを使わずにやろうと思い、次のようなソースを書いたのですが、カーソルの右と上への移動が過度にされ、
左と下への移動があまりうまく判定されません。どのように改善したらよいでしょうか。
POINT pos;//現在のマウス位置
POINT poso;//マウス左ボタンを押した位置
case WM_LBUTTONDOWN:
if(!isMouseDown){
poso.x=LOWORD(lParam);//マウス左ボタンを押した位置セット
poso.y=HIWORD(lParam);
}
isMouseDown=TRUE;
break;
case WM_LBUTTONUP:
isMouseDown=FALSE;
break;
case WM_MOUSEMOVE:
if(!isMouseDown)return 0;
pos.x-=poso.x;//差でマウスの移動方向を判定
pos.y-=poso.y;
if(pos.x<0)(回転角変更処理)
else if(pos.x>0)(回転角変更処理)
if(pos.y<0)(回転角変更処理)
else if(pos.y>0)(回転角変更処理)
poso.x=pos.x;//動かすたびに移動方向を判定できるようリセット
poso.y=pos.y;
break;
while( msg.message!=WM_QUIT )// メッセージループ
{
if(isMouseDown)GetCursorPos( &pos );
}
■ このスレッドは過去ログ倉庫に格納されています