2011-07-27 64 views
1

我儘量做到儘可能的短,請不要誤會我的意思,如果我不提供足夠的信息:如何委託textStorageDidProcessEditing通知?

我在一個基於文檔的可可應用程序,它是a tutorial by Apple for programming a text editor within 15 minutes結果得到了一個N​​STextView。在我的「PureBasicDocument.m」實現中,我得到了textDidChange方法,每當我在NSTextView中更改某些內容時都會調用它。我也得到了textStorageDidProcessEditing通知的方法,但它永遠不會被調用。我如何調用它?我確信我只是忘了分配網點或類似的東西。但是在textView和他們網點的窗口盯着看,一遍又一遍地看着我並沒有帶來更多的進展。我無能爲力。有總比沒有好,這裏是至少我的文檔類的頭文件(「PureBasicDocument.h」)現在:

#import <Cocoa/Cocoa.h> 

@interface PureBasicDocument : NSDocument { 
    IBOutlet NSTextView *textView; 
    NSAttributedString *mString; 
} 

- (NSAttributedString *) string; 
- (void) setString: (NSAttributedString *) value; 
- (void) textDidChange: (NSNotification *) notification; 
- (void) textStorageDidProcessEditing: (NSNotification *) notification; 

@end 

我再次道歉,如果我沒有使用「委託」(進一步)表達權,對於Objective-C和Mac上的編程,我仍然是全新的。

回答

1

右鍵單擊MainMenu.xib中的pureBasicDocument對象。您可以看到outlet(textView)。 從那裏你可以連接到相應的tableview。 確保你是否有包含在「引用奧特萊斯」委託

+0

我NSTextView連接作爲代表。在「Outlets」下,我有一個textView和一個只有窗口連接的窗口。在那連接textView沒有任何作用。 PS:我沒有任何的tableView - 只滾動視圖無法連接。 據我瞭解我還需要使這是由NSTextView而不是NSTextView本身包含的NSTextStorage的代表。 –