【100ポイント】 MacとLinuxのプログラミングに関する質問です。回答を頂けなかったのでポイントをアップしました。最も参考になる回答をしてくださった方(1名様)に100ポイントを進呈します。


Windowsではグローバルフックを利用して、キーボードやマウスなどの動きを監視することができます。Mac OS XやLinuxでも同じような実装ができるのでしょうか?キーボードやマウスの動きを監視するようなプログラムを実装できますか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/09/18 22:51:29
  • 終了:2006/09/25 21:55:27

回答(2件)

id:kimbara No.1

kimbara回答回数638ベストアンサー獲得回数132006/09/19 00:43:00

ポイント50pt

Mac OS X では AppKit の機能の一部として実装されていますので、すべての Cocoa アプリケーションでマウスイベントをハンドルできます。


http://developer.apple.com/documentation/Cocoa/Conceptual/EventO...

こちらは、ハンドルできるマウスイベントの種類について記述されています。マウスのボタンダウン、ボタンリリース、ドラッグ、移動の4つがあります。


http://developer.apple.com/documentation/Cocoa/Conceptual/EventO...

こちらでは、イベントのディスパッチの動作について、簡単な説明が記述されています。



Carbon アプリケーションの場合は以下のようになります。

http://developer.apple.com/documentation/Carbon/Conceptual/Carbo...

CarbonアプリでEventManagerを使ったプログラミングについては以下のpdfが参考になります。

http://developer.apple.com/documentation/Carbon/Conceptual/Carbo...

id:er7

Mac OS Xは出来そうですね。早速読んでみます。ありがとうございます。Linuxに関してももご存知であれば教えていただけると助かります。

2006/09/19 01:56:10
id:lunlumo No.2

lunlumo回答回数107ベストアンサー獲得回数142006/09/21 20:56:11

ポイント50pt

 kimbaraさんの紹介されている方法はグローバルフックとは性格が異なるのではないかと。MacOSXでアプリケーション/ウィンドウのイベントを横取りする方法としては,Objective-Cの動的バインドの特長を利用して,自前のクラスをフレームワークのクラスと置き換える方法があるようです。その為の方法ではないので変更が衝突した場合の動作に不安が残りますが...。

http://www.cocoadev.com/index.pl?GlobalModifications

http://www.cocoadev.com/index.pl?WindowShade

id:er7

時間が無くてまだ調べれていませんでした。チェックしてみます。ありがとうございました!!

2006/09/23 00:06:19

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません