1

我已更改我的打印菜单项以将 -printWindow: 消息发送到第一响应者,并在我的两个窗口控制器(我的主窗口和辅助窗口)上定义了该方法。在我的主窗口上,一切正常。但是,当我关注第二个窗口时,打印菜单项被自动禁用。

@interface SecondaryWindowController : NSWindowController {

}

- (IBAction) printWindow:(id)sender;

我的实现:

- (IBAction) printWindow:(id)sender {
    NSLog(@"called print:%@", sender);
}

如果我了解菜单项的自动验证,它应该爬上第一响应者层次结构,寻找响应所选选择器的对象......这应该是我的 SecondaryWindowController,但菜单项被禁用。知道我做错了什么吗?

4

1 回答 1

2

事实证明,我需要将窗口的代理出口连接到文件的所有者(我的窗口控制器)。然后菜单能够正确自动验证并启用菜单项。

于 2011-10-10T20:35:40.027 回答