7

Xcodeを使用してMac osxアプリケーションに取り組んでいます。すべてのアプリケーションの上に透明なフルスクリーン ビュー/ウィンドウを追加したいと考えています。透明なビューに「描画」できるように、その背後には、アプリケーション、サファリ、ワードなどがあります。

私は次のように試しました

 NSRect rect = [[NSScreen mainScreen] frame];   //this is full screen size, but still with the status bar like time, battery, etc.

 NSWindow *overlayWindow = [[NSWindow alloc]initWithContentRect:rect
 styleMask:NSBorderlessWindowMask
 backing:NSBackingStoreBuffered
 defer:NO];
 overlayWindow.backgroundColor = [NSColor redColor];
 [self.window addChildWindow:overlayWindow ordered:NSWindowAbove];

これは、私の mac アプリケーションの新しいフルスクリーンの子ウィンドウです。しかし、Mac で実行しているすべてのアプリケーションの上にあるわけではありません。

だから私の質問、私のMacスクリーンビューの上にビューを追加する方法(私のアプリケーションのトップビューだけでなく)。本当にありがとう!!!

4

3 に答える 3

4

これはあなたが望むもののように見えます。

NSWindowもっている- (void)setLevel:(NSInteger)windowLevel

この便利な事前定義されたレベルを使用します。お好きな方をお選びください。これらのレベルのいずれかのすぐ上またはすぐ下にする場合は、1 を加算または減算します。

#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
于 2013-05-27T21:33:49.980 に答える