Access (2002 / 2003) のデータ バインド フォームでは、カーソルが複数行のテキスト フィールドまたはリスト ボックス内にある場合でも、マウスホイールを回すと次/前のレコードに移動します。これはユーザーにとって大きな煩わしさであり、簡単にオフにすることはできません。
私は最近、MouseHook ( http://www.lebans.com/mousewheelonoff.htm ) と呼ばれる DLL を発見しました。これは、このマウスホイールの動作を効果的にブロックし、より期待される動作に置き換えることができます。
ただし、外部 ActiveX コントロールが Access フォームに追加されると、このモジュールは何もしません。たとえば、FlexGrid コントロールを含むフォームがあり、多くの行を含めることができます。ユーザーがマウスホイールを使用してスクロールしようとすると、MouseHook DLL がロードされていても、Access は別のレコードに移動します。
MouseHook DLL のようなソリューションはありますが、外部 ActiveX コントロールでも機能しますか? または、MouseHook DLL のソース コードを利用できるので、FlexGrid などのコントロールを処理するように変更できますか?
PS: MouseHook DLL の作成者に聞きたかったのですが、彼は現在 2009 年 6 月まで「休止中」です。