Mac OSでSendMessageと同等の機能はありますか?Mac上のC++/Windows SendMessage()に相当するものは何ですか?
答えて
皮肉なことに、Objective-Cのすべてのメソッド呼び出しはSendMessageに相当します。 Objective-Cは、メッセージの受け渡しシステムを心がけています。
だから、あなただけ言う:
[window myMessage]
とmyMessageルーチンは、WindowオブジェクトにmyMessageを渡すと、それはそのメソッドを処理することによって実行されます...
それがまた近い事が可能です本当にしたいのは、コンポーネント間のメッセージに通知を使用することです。
コンパイル時にWindowオブジェクトが周囲にない場合、コンパイラはWindowが送信しているメッセージを処理できるかどうかわからないことを文句を言うかもしれません。そのような場合は次を使用できます:
[window performSelector:@selector(myMessage)]
オブジェクトをパラメータとして渡すことができる代替バージョンがあります。より高いレベルで
なぜあなたはこの皮肉なことを言ったのか分かりませんが、確かに正しい答えです:) SendMessageの全体のコンセプトは、ビザンチンで最もダイナミックなディスパッチを実現する単なる方法です。もちろん、他のすべての形式のメッセージ送信に比べて非常に遅いです。 – StilesCrisis
遅れていたので、数億ドルの研究開発費があなたの言語を手に入れました。今すぐ他の言語だけが適切なメモリ管理のためにARCほど速いものを持っていれば... –
、あなたはカーボンイベントマネージャについて話している場合、あなたは「SendEventToEventTarget」
参照機能を使用するどのようなメッセージあなたはSendMessage関数で送信することだろう( )。 Cocoaのほとんどのイベントは、たとえば-[NSApplication sendEvent:]
、または下位バージョンが必要な場合はSendEventToEventTarget()
になります。サイズ変更、移動などのその他のメッセージについては、NSWindowの適切なメソッド(-setFrame:animated:
など)またはNSApplicationを調べる必要があります。
一般的に言えば、SendMessage()のようにファンネルルーチンと関数定数を使用する代わりに、関連するオブジェクトを取得してそのメソッドを呼び出すだけです。
- 1. Macのwin32に相当するものは何ですか?
- 2. MacでUbuntuのapt-getコマンドに相当するものは何ですか?
- 3. IntelliJ for Mac OS Xの「Alt-Insert」に相当するものは何ですか?
- 4. アンドロイド上のウィンドウのバッチに相当するものは何ですか?
- 5. app.dock.hide()に相当するものは何ですか?
- 6. Elasticsearchの(mongodbの)$に相当するものは何ですか?
- 7. Windows 10のdocker.sockに相当するものは何ですか?
- 8. DjangoアプリケーションのHerokuに相当するものは何ですか?
- 9. .NETのSystem.nanoTime()に相当するものは何ですか?
- 10. Javascriptの.sampleに相当するものは何ですか?
- 11. phpMyAdminのアスタリスク(*)に相当するものは何ですか?
- 12. Visual C++のMy.Resourcesに相当するものは何ですか?
- 13. Debugger.Launch()のJavaに相当するものは何ですか?
- 14. .NETのPHP InfiniteIteratorに相当するものは何ですか?
- 15. NOT INのHQLに相当するものは何ですか?
- 16. @Postconstructのejb-jar.xmlに相当するものは何ですか?
- 17. dojo.create()のjQueryに相当するものは何ですか?
- 18. .net coreのcontext.environment.addに相当するものは何ですか?
- 19. Go deferのルビに相当するものは何ですか?
- 20. ARRAYFORMULAのINDEXに相当するものは何ですか?
- 21. Python os.pathsepのRustに相当するものは何ですか?
- 22. Regexp :: AssembleのJavaに相当するものは何ですか?
- 23. phpのtop.locationに相当するものは何ですか?
- 24. .NETの "ByteBuffer.flip"& "ByteBuffer.slice"に相当するものは何ですか?
- 25. PHPのpreg_quoteに相当するものは何ですか?
- 26. Rubyのsubstrに相当するものは何ですか?
- 27. Rubyの "pythonic"に相当するものは何ですか?
- 28. iOSのC#ドロップダウンコンボボックスに相当するものは何ですか?
- 29. WinRTのSecureStringに相当するものは何ですか?
- 30. pythonのgetattrに相当するものは何ですか
SendMessageが必要な理由や達成しようとしていることについてもっと説明すると役に立ちます。この質問はあまりにも曖昧です。 – chrish