我正在尝试将抽屉功能编程到Smultron(开源代码编辑器)中,但是我遇到了一些麻烦。我不断收到错误消息:

2009-09-20 12:43:06.067 Smultron[4481:a0f] -[SMLProject directoryDrawer]: unrecognized selector sent to instance 0x2003ea6c0


现在在接口构建器上的SMLProject中,我将一个NSDrawer对象连接到它们的主窗口中,并将其添加到SMLProject.h中:

@property (readonly,retain) IBOutlet NSDrawer *directoryDrawer;
@property (readonly) IBOutlet NSOutlineView *directoryDrawerList;


并将其发送到SMLProject.m(通过SMLCurrentProject中的另一种方法打开目录时调用)

- (void)openDirectoryDrawer:(NSString *)directory
{
    // todo: set directory contents
    [[self directoryDrawer] setParentWindow:[self window]];
    [[self directoryDrawer] open];
}

最佳答案

您是否在SMLProject.m中综合了属性?

@synthesize directoryDrawer, directoryDrawerList;


另外,为什么将DirectoryDrawer设置为只读,并保留属性?保留根本没有意义,因为该属性是只读的。

关于objective-c - 无法识别的选择器通过抽屉发送到实例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1450854/

10-11 07:52