同じコンテキスト メニューを持つ 5 つの NSTableView のインスタンスがあります。メニューがクリックされたというメッセージが表示されたら、それを送信したテーブルを知る必要があります。NSMenu のドキュメントを確認しましたが、メニューを開いたテーブルを確認する方法が見つからないようです..
NSTableView をサブクラス化し、menuForEvent でデリゲートにメッセージを送信することを考えていますが、それが最善の方法でしょうか?
アップデート:
ありがとう Joshua、私は 5 つのテーブルを使用して週 5 日のタスク プランを表示しています。各テーブルは曜日を表し、タスクを追加および削除するためのコンテキスト メニューを追加しました。したがって、ユーザーが平日に「タスクを追加」をクリックすると、どのタスクかを知る必要があります。テーブルビューをサブクラス化し、メニューが開いたときにデリゲートにメッセージを送信することで機能しました。このようにして、コントローラーは、どのテーブルが最後にメニューを呼び出したかを認識します。しかし、これを実現するのに最適な実装とは思えません。問題は UI にあるとおっしゃっていたようですが、どう思いますか? ホセ。