1

私は次のものを持っていますWndProc

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM w, LPARAM l)
{
    switch (message)
    {
    case WM_DESTROY:
        PostQuitMessage(0);
        return 0;
    case WM_MOUSEMOVE:
            return 0;
    default:
        return DefWindowProc(hWnd, message, w, l);
    }
}

マウスが動かないようにしたいので、動くメッセージを破棄しようとしています。問題は、マウスがまだ動いていることです。私も試してみWM_NCHITTESTましWM_MOUSEHOVERた。

4

2 に答える 2

7

このメッセージは、マウスが移動したこと、およびアプリケーションがその情報を使用して何かを実行したい場合は実行できることWM_MOUSEMOVEをウィンドウ マネージャーが通知するだけです。マウスの動きをインターセプトして勝手にキャンセルできる仕組みではありません。

于 2012-07-21T23:08:45.417 に答える
5

カーソルの動きを制限しようとしている場合は、Windows APIのClipCursor関数を調べてください。

于 2012-07-22T01:30:01.460 に答える