在NSTableView中为选定行启用副本

时间:2011-09-22 20:42:35

标签: macos cocoa nstableview copy-paste

我已经阅读了Aaron Hillegass的Cocoa Programming for Mac OS X,了解如何进行复制/粘贴,但我无法让它适用于NSTableView。

我的NSWindowController有一个窗口,里面有几个文本字段和一个NSTableView。当文本字段具有焦点时,复制菜单已启用,我可以复制值(这是所有默认行为,我不需要操作/代码)。

我的NSWindowController有一个-copy:方法实现并声明:

- (void) copy:(id)sender {
    NSPasteboard *pasteBoard = [NSPasteboard generalPasteboard];
    // some code to put data on the pasteBoard
}

但是,当我选择几行并尝试复制时,复制菜单未启用,我无法复制所选行。

我需要做些什么才能为我的NSTableView启用副本吗?

2 个答案:

答案 0 :(得分:4)

问题最终是我的窗口委托没有设置为我的窗口控制器,所以当窗口试图验证菜单项时,它不知道检查选择器的人。

答案 1 :(得分:-8)

在界面构建器中,确保保存菜单的选择器连接到第一个响应者的“保存:”操作