2011-10-07 69 views
1

我已更改我的打印菜單項目以發送-printWindow:消息到第一個響應程序,並在我的兩個窗口控制器(我的主窗口和輔助窗口)上定義該方法。在我的主窗口上,一切正常。但是,當我關注第二個窗口時,「打印」菜單項目將被自動禁用。打印菜單項目啓用/禁用各種NSWindowControllers

@interface SecondaryWindowController : NSWindowController { 

} 

- (IBAction) printWindow:(id)sender; 

我的實現:

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

如果我理解的菜單項自動驗證,它應該爬上了第一個響應層次尋找的對象響應所選擇的選擇......這應該是我的SecondaryWindowController,但菜單項被禁用。任何想法我做錯了什麼?

回答

1

事實證明,我需要將窗口的委託出口連接到文件的所有者(我的窗口控制器)。然後菜單能夠正確自動驗證,菜單項被啓用。