如何委派textStorageDidProcessEditing通知?

时间:2011-07-27 19:17:42

标签: objective-c xcode cocoa macos delegates

我尽量做到尽可能短,如果我提供的信息不够,请不要误会我的意思:

我在基于文档的cocoa应用程序中获得了NSTextView,这是a tutorial by Apple for programming a text editor within 15 minutes的结果。在我的“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 个答案:

答案 0 :(得分:1)

右键单击MainMenu.xib中的pureBasicDocument对象。您可以看到出口(textView)。 从那里你可以连接到相应的tableview。 确保您是否包含代理