我正在开发一款在其主窗口中使用工具栏的Mac应用。在菜单中有一个项目,允许用户显示或隐藏工具栏。在Interface Builder中,此菜单项连接到MainMenu.xib中的First Responder的toggleToolbarShown:方法。 FWIW,我的主窗口位于不同的xib和toggleToolbarShown:当它是最前面的窗口时正确调用它。
我的应用有一个偏好设置面板,它还有一个工具栏。但是,我不希望用户能够在此面板上切换工具栏。实际上,显示/隐藏菜单项允许在首选项窗口位于最前端时切换首选项工具栏,因为它通过First Responder。
如何仅针对首选项面板而不是主窗口禁用此行为?
答案 0 :(得分:3)
您可以在您的首选项窗口中使用NSWindow子类,并从那里禁用菜单项。请参阅Camino's PreferencesWindow,它完全符合您的要求。你还想在窗口上调用setShowsToolbarButton:NO,如果你还没有这样做的话。