1

好的,我有一个有很多 xib 的项目,每个 xib 都包含很多 nswindows。

我需要使用键盘快捷键来保存每个窗口。

我是否需要为每个 XIB 创建多个 mainMenu NSMenuItems。但另一个问题是单个 Cmd+S 如何知道哪个窗口处于焦点以及如何调用我的方法。

4

1 回答 1

2

不,您不需要制作多个 NSMenuItem。

mainMenu.xib 附带的一个用于此目的。

制作菜单的 IBActionFile->Save并将其用作:

- (IBAction)saveMenu:(id)sender {
    NSWindow *currentWindow=[NSApp keyWindow];
    NSLog(@"this is key window  : %@", currentWindow.title);
}

这将为您提供活动窗口。

在每个控制器中,您需要覆盖

- (void)saveDocument:(id)sender; 

并使用 IB 绑定它。

于 2013-03-26T06:34:09.590 回答