NSWindow带有自定义阴影

时间:2011-02-01 11:10:38

标签: objective-c macos nswindow

我想在NSWindow-Object上绘制自定义阴影。

有没有办法通过将自己的NSShadow-Object传递给NSWindow来做到这一点?还是一个(私人)方法,我可以把自己的绘图代码放在哪里?

谢谢,

1 个答案:

答案 0 :(得分:3)

别。你不应该改变窗户的外观。只允许Apple更改UI的外观。普通应用程序应使用标准应用程序。

那就是说,如果你真的坚持这样做,那就有办法了。不幸的是,您不能只附加NSShadow。另外,据我所知,没有私人方法可以吸引影子。这是由Window Server完成的,而不是由应用程序完成的。

但是你可以要求窗口服务器不要添加阴影。您是否注意到在Interface Builder中,有一个选项可以抑制给定窗口的阴影?这对应于NSWindow的属性hasShadow

在压制阴影之后,你只需要自己画出一切。 ADC提供了一个用于自定义窗口绘制的漂亮示例代码,因此请查看它。