我的NIB仍然具有创建新项目时所有标准菜单项 – 包括“窗口”菜单中的“最小化”项目,其中定义了默认快捷键CMD-M.它连接到第一响应者发送performMiniaturize :.但是,当应用程序运行时它没有启用,因此它似乎必须询问窗口是否可以最小化并且窗口显示no或者其他内容. (我对OSX / Cocoa还很新.)
我错过了什么?
此外,也许这是相关的,我的无边框窗口启用了阴影 – 但与正常的标题窗口不同,当我通过单击它使我的窗口成为活动/前窗时,阴影不会改变.通常情况下,一个OSX聚焦窗口有一个稍大/暗的阴影,使它更突出,但我永远不会改变阴影.这就像我错过了让 *** 作系统将此窗口视为真实/正常/主窗口或其他东西的东西,因此我失去了阴影变化和功能CMD-W / CMD-M.
解决方法 你所缺少的是当你创建一个无边框窗口时,你正在消除标准窗口附带的FrameVIEw,它实际上实现了-keyDown:方法,它接收那些击键并使窗口小型化或关闭.NSWindow本身实际上是一个相当轻量级的类,我们认为标准窗口行为的大多数都是由框架视图完成的.
总结以上是内存溢出为你收集整理的objective-c – NSBorderlessWindow没有响应CMD-W / CMD-M全部内容,希望文章能够帮你解决objective-c – NSBorderlessWindow没有响应CMD-W / CMD-M所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)