2010-08-25 20 views
1

我使用查找出的NSTextField一個字段編輯器

- (id)windowWillReturnFieldEditor:(NSWindow *)sender toObject:(id)anObject 

提供我自己的字段編輯器,所以我可以顯示自定義快捷菜單。 這可以工作,但是當我的字段編輯器的「menuForEvent:」方法中,我如何找到它連接的NSTextField?

編輯:好吧,我發現我通過

[[[[self window] firstResponder] nextResponder] nextResponder] 

通過的TextView裏得到它的問題是 - 這是一個很好的解決方案或黑客攻擊。 我不得不跳過類_NSKeyboardFocusClipView的內部響應者,所以我害怕這可能不適用於未來的可可版本。

回答

0

我不想依賴於響應者鏈,似乎相當脆弱。

我想嘗試將屬性添加到我的字段編輯器類中,並將其設置爲windowWillReturnFieldEditor:toObject:委託方法中的anObject。

+0

我以前嘗試過,但它不適用於一些衆所周知的原因。順便說一句,用這種方法放一個printf讓我感到不舒服,看看它被調用了多少次。 – Lothar 2010-08-26 08:40:04