我有一个NSWindow的NSBorderlessWindow子类,它具有透明且不透明的背景(所以它的外观是非矩形的).当我点击按钮时,我添加了自己的按钮作为关闭和最小化按钮,但由于某种原因,窗口不像正常情况那样响应CMD-W或CMD-M.我将我的NSWindow子类设置为返回YES到canBecomeKeyWindow和canBecomeMainWindow.
我的NIB仍然具有创建新项目时所有标准菜单项 – 包括“窗口”菜单中的“最小化”项目,其中定义了默认快捷键CMD-M.它连接到第一响应者发送performMiniaturize :.但是,当应用程序运行时它没有启用,因此它似乎必须询问窗口是否可以最小化并且窗口显示no或者其他内容. (我对OSX / Cocoa还很新.)
我错过了什么?
此外,也许这是相关的,我的无边框窗口启用了阴影 – 但与正常的标题窗口不同,当我通过单击它使我的窗口成为活动/前窗时,阴影不会改变.通常情况下,一个OSX聚焦窗口有一个稍大/暗的阴影,使它更突出,但我永远不会改变阴影.这就像我错过了让操作系统将此窗口视为真实/正常/主窗口或其他东西的东西,因此我失去了阴影变化和功能CMD-W / CMD-M.