PostEvent非推奨の警告が表示され、1 つを使用することになってPostEventToQueueいると思いますが、2 つの追加パラメーターが必要であり、パラメーターの組み合わせに関するドキュメントが見つかりません (1 つはキューの仕様、もう 1 つはイベントの優先度です) ) と同等になりPostEventます。
2 に答える
1
PostEventToQueueのような低レベルの OS イベントではなく、Carbon イベント用ですPostEvent。キーボードまたはマウスのイベントをポストしたい場合は、 を使用する必要がありますCGEventPost。
追加する編集:現在の場所にマウスを置いて投稿するには、(テストされていない)これを行うことができると思います:
CGEventRef theEvent = CGEventCreate( NULL );
CGEventSetType( theEvent, kCGEventLeftMouseDown );
CGEventPost( theEvent );
CFRelease( theEvent );
于 2013-07-07T16:46:19.517 に答える
0
GetMainEventQueue()によって返されたイベントキューを使用すると(またはGetCurrentEventQueueメインスレッドを使用している場合)、kEventPriorityStandard優先度のために、 と同等の結果が得られると想定するのが妥当だと思いますPostEvent。
ただし、これらは自分のアプリケーションにのみ影響することに注意してください。古い Event Manager でさえ、おそらく「オペレーティング システムのイベント キュー」にアクセスすることはできなくなりました。それが Carbon Event Manager バージョンの単なるラッパーであったとしても、私は驚かないでしょう。他のアプリケーションにヒットする可能性のあるイベントを投稿したい場合は、CGEvent のものに切り替える必要があります。
于 2013-07-08T05:44:30.880 に答える