我有一个NSWindow子类,看起来像这样
困扰我的是我想改变阴影。 在标准窗口上,就像Xcode一样,对比度有点弱。
所以我想对它应用更强大的NSShadow
。
我在这里找到了这个:
显然,你不应该,因为UI应该主要由操作系统处理。 但是窗口已经完全自定义了,所以我认为它没问题。
我怎样才能做到这一点?
我忘了提及,我知道我可以重新绘制NSWindow
,但我尽量避免这种情况。
答案 0 :(得分:2)
据我所知,如果不钻研私有API,就无法实现这一目标。
如果您迫切想要更改阴影,唯一可以做到这一点的方法是,如果您将窗口中的根视图设置为具有图层,在该图层上设置阴影,并插入内容以为其创建空间阴影。但这也带来了许多问题,包括窗口捕获应该用于底层窗口的点击,以及调整关闭句柄的大小。