人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

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

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

●質問者: er7
●カテゴリ:コンピュータ インターネット
✍キーワード:Linux MAC Mac OS X Windows キーボード
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● kimbara
●50ポイント

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...

◎質問者からの返答

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


2 ● lunlumo
●50ポイント

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

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

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

◎質問者からの返答

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

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ