2012-04-11 10 views
1

私はマウスポインタの形状変更通知を必要とするWindowsアプリケーションを作成しています。私は徹底的に調査しましたが、満足のいく解決策を見つけることができませんでした。私は、カーソル形状の変更とそれが変更されたカーソルのタイプの通知を受け取りたい。MFCでマウスポインタの形状変更イベントをキャプチャ

検索の結果、すべてのプロセスにフックをインストールしてWM_SETCURSORイベントをキャプチャする必要があることがわかりましたが、このメッセージをキャプチャしても完全な情報は得られません。だれでも助けてくれたら案内してください

+0

あなたはどんな情報を期待していますか、何が得られていますか? – MikMik

+0

私は、カーソルのタイプを予期しています(例えば、矢印から手に変更されたとき、またはサイズ変更のために変更されたとき)、その位置のみを取得しています。loadcursor()で、 IDC_CROSS、IDC_HAND)を使用してカーソルを変更します。同じIDまたはそれと同等のものがあれば、私は自分のアプリケーションに入ることができます –

答えて

2

GetCursorまたはGetCursorInfoで現在のカーソルのハンドルを得ることができます。

問題は、ハンドルが参照するカーソルを知ることです。私はそこに "逆発見"機能があるとは思わないので、異なる可能な値に対してLoadCursorによって返されたものとあなたのハンドルを比較することによってそれを実装しなければならないでしょう。

幸い、ドキュメントがこれを言う:

LoadCursor関数は、それがロードされていない た場合にのみ、カーソルのリソースをロードします。それ以外の場合は、既存の リソースへのハンドルを取得します。

関連する問題