Доступ к NSTextField из уведомления его делегата ... - PullRequest
0 голосов
/ 16 января 2012

У меня есть подклассы NSTextField

MultiTextField.h

#import <AppKit/AppKit.h>

@interface MultiTextField : NSTextField {
    id storedObject;
}
@property (nonatomic, retain) id storedObject;
@end

MultiTextField.m

#import "MultiTextField.h"

@implementation MultiTextField
@synthesize storedObject;
@end

для хранения указателя на объект, который я хочу «переименовать».

Я сделал это текстовое поле редактируемым, и у меня есть делегат, который слушает controlTextDidChange: и работает нормально:

- (void)controlTextDidChange:(NSNotification *)aNotification {
    NSTextView *textView = [[aNotification userInfo] objectForKey:@"NSFieldEditor"];
    NSString *theString = [[textView textStorage] string];

    if([theString length] > 0 ) {
        MyObject *theObject = ???; // I need access to the MultiTextField.storedObject!
        [theObject setName:theString];
    }
}

единственная проблема заключается в том, что я не могу получить доступ к StorageObject (см. Комментарий в блоке if).

Так как мне получить доступ к хранимому объекту?

1 Ответ

1 голос
/ 16 января 2012

Попробуйте это:

MyObject *theObject = [[aNotification object] storedObject];
...