相当于Cocoa面板的setLevel?

时间:2011-06-19 17:00:18

标签: objective-c cocoa

我有一个我在Cocoa中制作的面板(而不是一个窗口)我想在屏幕上将面板设置为浮动级别,因此它将显示在其他所有内容之上,但是面板没有像window一样的方法setLevel

除此之外还有其他选择吗?

我无法将面板更改为窗口btw!

由于

1 个答案:

答案 0 :(得分:3)

NSWindow类引用中列出的大多数方法也适用于NSPanel,因为NSPanel继承自NSWindow。总之,只需像这样使用setLevel:

[thePanel setLevel:NSStatusWindowLevel]; 

Mac OS X中的标准窗口级别:

#define NSNormalWindowLevel          kCGNormalWindowLevel
#define NSFloatingWindowLevel        kCGFloatingWindowLevel
#define NSSubmenuWindowLevel         kCGTornOffMenuWindowLevel
#define NSTornOffMenuWindowLevel     kCGTornOffMenuWindowLevel
#define NSMainMenuWindowLevel        kCGMainMenuWindowLevel
#define NSStatusWindowLevel          kCGStatusWindowLevel
#define NSModalPanelWindowLevel      kCGModalPanelWindowLevel
#define NSPopUpMenuWindowLevel       kCGPopUpMenuWindowLevel
#define NSScreenSaverWindowLevel     kCGScreenSaverWindowLevel
#define NSDockWindowLevel            kCGDockWindowLevel