2012-04-08 5 views
2

Perlで、実行中に現在のカーソルタイプを取得する必要があるアプリケーションを作成しています。私は定期的にマウスをチェックするタイマーを作成する必要があり、マウスが特定のタイプであれば、一時停止するか、何か他のことをする必要があります。カーソルは別のプログラムで実行されている可能性があります.TK/GTKアプリケーションで実行する必要はありません。私はタイマー部分でうまくいますが、私は現在のカーソルタイプを得ることができる何かを見つけることができませんでした。Perl:現在のカーソルアイコン/タイプを取得する

誰でもこれを行う方法を知っていますか?

おかげで、

ジェームズ

答えて

2

あなたはこれを実現したい、少なくともオペレーティングシステムを指定する必要があります。

マウスカーソルはPerlではなくOSによって管理されるため、OSからその情報を取得する方法を見つける必要があります。

アプリケーションがWindows上にある場合は、Win32::GUIを見ていきます。

これが役に立ちます。

編集:

あなたは窓の上にあるので、あなたからその機能にアクセスする方法を見つけ、その後、その情報を取得するには、Windows API関数を見て、このhttp://msdn.microsoft.com/en-us/library/windows/desktop/ms648389(v=vs.85).aspx

のようなものを持っていますPerl - Win32::APIはそれを行うのに便利なモジュールかもしれません。

+0

ありがとう。はい、それはウィンドウですが、Win32 :: GUIでは何も見つかりませんでした。 – user1320453

+0

ありがとう - 私はこれを試したが、行っていない。 $ function = Win32 :: API-> new( 'user32.dll'、 'getCursorInfo'、 'II' );私は間違っていたことを完全に確信しています。 $ return = $ function-> Call(); print $ return; – user1320453

関連する問題