当窗口在无边框窗口中变为活动状态时,如何创建更暗和更大的阴影?
我将NSWindow子类化,我的窗口成为主窗口和关键窗口,但这没有帮助..阴影仍然很小。所以也许有人知道如何解决这个问题?我也尝试过无效的阴影,但这也没有帮助..
Subclassed NSWindow:
- (id)initWithContentRect:(NSRect)contentRect
styleMask:(NSUInteger)windowStyle
backing:(NSBackingStoreType)bufferingType
defer:(BOOL)flag
{
self = [super initWithContentRect: contentRect
styleMask: NSBorderlessWindowMask
backing: NSBackingStoreBuffered
defer: NO];
if(self)
{
[self setHasShadow:YES];
[self setBackgroundColor:[NSColor clearColor]];
[self setOpaque:NO];
}
return self;
}
答案 0 :(得分:1)
如果这是我的问题,我可能会为无边框窗口关闭阴影属性 ,然后从display
函数处理阴影图在我的NSWindow
子类中(确保调用[super display]
,以便各种内容和子视图获得自己的绘制方法)。
这是a potentially related question with an answer for you to consider。
答案 1 :(得分:1)
这与窗口的styleMask相关联。如果将其设置为NSTitledWindowMask窗口将获得更大的阴影。
答案 2 :(得分:1)
总的来说,我认为达尔马齐奥在他的观察中是正确的,无论什么原因,无边界的窗户都有不太明显的阴影。也许用苹果提供雷达。