0

Delphi 7 の長年のユーザーとして、私はいくつかのコントロールで独自のマウス ホイール処理を行ってきましたが、最近のいくつかのアプリケーションでは、マウス カーソルをコントロール (リスト ボックスやツリーなど) の上に配置するだけでよいことに気付きました。 view) をマウス ホイール アクティビティで使用して、そのコントロールをスクロールさせます。
これはいい感じです (ホイールに反応する前にコントロールをクリックしてフォーカスする必要があるのとは対照的です)。

今、私は Delphi 2010 に移行しました。「正しい」動作とは何ですか?
また、Delphi で何を使用すれば、これを自分のソリューションで解決する必要がなくなりますか?

ありがとう。

4

1 に答える 1

0

公式の「正しい」動作があるかどうかはわかりませんが、個人的には、マウス ポインターが現在ホバリングしているウィンドウにマウス ホイールが移動したときに、明示的にフォーカスを当てる必要がなく、最も直感的に正しいと思います。ただし、これはデフォルトの動作ではなく、私が通常使用するアプリケーションの約半分は一方の方法で行い、残りの半分は別の方法で行うようです。

フォーカスを持たずにマウス ホイール メッセージを取得するには、マウス フックを実装する必要があります。

于 2010-03-18T20:42:35.940 に答える