2011-10-07 64 views
1

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

@interface SecondaryWindowController : NSWindowController { 

} 

- (IBAction) printWindow:(id)sender; 

我的实现:

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

如果我理解的菜单项自动验证,它应该爬上了第一个响应层次寻找的对象响应所选择的选择......这应该是我的SecondaryWindowController,但菜单项被禁用。任何想法我做错了什么?

回答

1

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