1

グリッドで水平方向にスクロールしたい (DataGridView から継承)。Ctrl+スクロール チルトホイール (マウスホイール) ではなく、マウスホイールを左右に押します。

最初に、WndProc で WM_MOUSEHWHEEL (0x020E) メッセージをキャッチして試してみましたが、これは 1 回しか発生しません (押している間は左または右に移動し続けたいと思います)。

コントロールのメッセージをチェックするために Spy++ を使用しましたが、有用なものは何も見つかりませんでした:$ Richtextbox (およびメモ帳) で同じことをチェックしたところ、発生する別のメッセージがあるようです: WM_HSCROLL (0x0114)。

リッチテキスト ボックスは、ホイールを左右に押しても水平方向にスクロールしませんが、WndProc 関数で WM_HSCROLL をキャッチできます。DataGridView でそれを行うことはできません (メッセージはそこに届きません)。

それで、このことを機能させる方法があるかどうか疑問に思っていますか?

よろしく、

落ち着いて

4

1 に答える 1

0

サニティチェックとして水平スクロールバーで試しましたか? ここで説明:スタック オーバーフロー: マウス チルト ホイール

また、DataGridView にはキーボード フォーカスが必要であり、それが原因で RichEdit コントロールはスクロールしますが、DataGridView はスクロールしません。

于 2009-11-17T21:24:14.683 に答える