2010-07-08 36 views
3

在對象內部,我使用NSMenu的addItemWithTitle:action:keyEquivalent:來創建NSMenuItems。問題是我想調用另一個對象的方法作爲操作。 action:部分採用@selector作爲參數,我不知道如何使用它來調用其他對象上的方法。我可以在創建NSMenu的對象中創建一個方法,然後從該對象中調用我想調用另一個對象的方法。但是,後來我不知道任何好的命名約定。@selector和其他類(Objective-C)

回答

2

在新創建的NSMenuItem對象上使用setTarget:來設置操作消息的目標對象。下面是The Objectvive-C Programming Language: Selectors的一個示例,它爲表格單元格做類似的事情:

[myButtonCell setAction:@selector(reapTheWind:)]; 
[myButtonCell setTarget:anObject]; 
+0

非常感謝!爲什麼我沒有想到這一點。 – Jennifer 2010-07-08 18:17:56

+0

未明確設定時的目標是什麼? – hop 2010-07-08 18:28:31

+3

如果目標是'nil',則應用程序將沿響應者鏈找到響應該動作的對象。 – Wevah 2010-07-08 18:33:38