2012-12-02 44 views
4

我的应用程序在菜单栏中有一个图标。当我点击图标时出现NSPanel。但为什么NSPanel没有像灰色背景NSWindow其他背景颜色?我的NSPanel的背景看起来像透明。我的NSPanel来自.xib文件。我的代码如下:为什么我的NSPanel没有正常的灰色背景?

(void)openPanel 
{ 

NSLog(@"openPanel"); 

NSWindow *panel = self.panelController.window; 

NSRect rect = [[[NSApp currentEvent] window] frame]; 
NSLog(@"rect.origin.x = %f",rect.origin.x); 
NSLog(@"rect.origin.y = %f",rect.origin.y); 
NSLog(@"rect.size.width = %f",rect.size.width); 
NSLog(@"rect.size.height = %f",rect.size.height); 
[panel setFrame:NSMakeRect(rect.origin.x, rect.origin.y-100, 200, 100) display:YES]; 
[NSApp activateIgnoringOtherApps:NO]; 
[panel makeKeyAndOrderFront:nil]; 

isPanelVisible = YES; 
} 

回答

1

通常NSPanels是半透明的。有关更多信息,请参阅here。如果您不想使用半透明度,则可以在NSPanel的自定义类中将NSPanel更改为NSWindow。

+0

谢谢你的回答。问题解决了。 – gohamgx

相关问题