Objective c 无法在菜单项的弹出面板中粘贴文本

Objective c 无法在菜单项的弹出面板中粘贴文本,objective-c,cocoa,nstextfield,nspanel,Objective C,Cocoa,Nstextfield,Nspanel,我有一个菜单应用程序,我正在从菜单项启动一个NSPanel:当用户单击菜单项时,我只是第一次懒洋洋地实例化一个自定义NSWindowController,然后调用showWindow显示它: 自定义NSViewController链接到一个xib文件: 我就是这样创建它的: // @property (nonatomic,strong) AddFeedController* addFeedController; - (AddFeedController*) addFeedController {

我有一个菜单应用程序,我正在从菜单项启动一个NSPanel:当用户单击菜单项时,我只是第一次懒洋洋地实例化一个自定义NSWindowController,然后调用showWindow显示它:

自定义NSViewController链接到一个xib文件:

我就是这样创建它的:

// @property (nonatomic,strong) AddFeedController* addFeedController;
- (AddFeedController*) addFeedController
{
    if (!_addFeedController)
    {
        _addFeedController = [[AddFeedController alloc]initWithWindowNibName:@"AddFeedController"];
    }
    return _addFeedController;
}
问题是,如果我尝试将一些文本粘贴到这两个文本字段中的一个字段中,它不会粘贴任何内容,并且会发出嘟嘟声

编辑

我设法恢复了原来的菜单,我不得不从另一个项目的xib复制它,因为只有原来的菜单可以识别,我修改了addFeedController访问器:

- (AddFeedController*) addFeedController
{
    if (!_addFeedController)
    {
        _addFeedController = [[AddFeedController alloc]initWithWindowNibName:@"AddFeedController"];
        [_addFeedController.window setLevel: NSPopUpMenuWindowLevel];
    }
    return _addFeedController;
}
我还修改了显示窗口的方法:

- (IBAction) launchFeedController : (id) sender
{
    [self.addFeedController showWindow: self];
    // I added these lines:
    [NSApp activateIgnoringOtherApps:YES];
    [self.addFeedController.window makeKeyAndOrderFront:self];
}

第一次面板立即出现,没有问题。但是当我关闭面板并尝试再次启动它时,它没有出现。

您是否将编辑菜单保留在主XIB或情节提要中?这是必需的,因为它将cmd-V键盘快捷键链接到粘贴:操作。我没有它。我重新添加了它,但现在我可以只使用子菜单项复制粘贴文本,等效键不起作用@皮尔·伯纳德,我实际上已经接近解决方案了。我添加了您提到的方法调用,并且我还确保面板的级别为NSPOUPMENUWindowLevel。现在面板第一次显示,但是如果我关闭它并尝试重新启动它,它不会在编辑中显示详细信息。您是否在Interface Builder中启用了“关闭时发布”功能?