GUI/ウィンドウ アプリケーションでマウス ホイール イベントをキャプチャするように、C# を使用してコンソール アプリケーションでマウス ホイール イベントをキャプチャする方法はありますか?
コンソール内のテキストの一部のみをスクロールするためにこれを行いたいと思います。
これについてグーグルで検索しましたが、ウィンドウアプリケーションのマウスホイールイベントしか見つかりません。
GUI/ウィンドウ アプリケーションでマウス ホイール イベントをキャプチャするように、C# を使用してコンソール アプリケーションでマウス ホイール イベントをキャプチャする方法はありますか?
コンソール内のテキストの一部のみをスクロールするためにこれを行いたいと思います。
これについてグーグルで検索しましたが、ウィンドウアプリケーションのマウスホイールイベントしか見つかりません。
関数を呼び出しReadConsoleInput
ます。MOUSE_WHEELED
コンソールでホイールが回転すると、イベントを受け取ります。
これは、「2 つの」部分で行うことができます。
マウス ホイール イベントでグローバル システム フックを作成します ( ここに良い例があります) 。
2 番目に PInvoke を使用して、コンソールがアクティブかどうかを確認します (ここで例を見つけることができます: 現在のアプリケーションがアクティブ化されているかどうかを判断する (フォーカスがあります) )
関数を 2 に拡張して、ここでウィンドウ RECT チェックを取得し、マウスの位置とウィンドウの位置を交差させることができます