3
我正在編寫一個應用程序,它正在桌面圖標(Mac OSX 10.7 Lion)上繪製基本的NSWindow。NSWindow在桌面圖標上繪製
NSWindow *systemInfoWindow = [[NSWindow alloc] initWithContentRect:frame
styleMask:NSBorderlessWindowMask
backing:NSBackingStoreBuffered
defer:NO];
systemInfoWindow.delegate = self;
[systemInfoWindow setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces];
[systemInfoWindow setBackgroundColor:backgroundColorSpace];
[systemInfoWindow makeKeyAndOrderFront:NSApp];
[systemInfoWindow setLevel:kCGDesktopIconWindowLevel];
這部分代碼工作得很好,NSWindow在圖標頂部繪製。 但是如果我在兩個空間之間切換,我的NSWindow留在圖標後面。
/* ===更新=== */ 我想我的窗口水平有問題。爲了更好的理解,我上傳了兩個截圖。 空間1 - 窗口停留就像我想要的圖標 http://dl.dropbox.com/u/1503795/Space1.png
空間2 - 窗口是在桌面圖標後面。他們也應該留在最前面 http://dl.dropbox.com/u/1503795/Space2.png
我發現了另一個問題。如果我激活了應用程序並保持在第一個空間上,並且在我的第一個屏幕截圖上看起來很好。如果我選擇桌面上的文件窗口也跳到後面: 對不起,不能老是發表諾特爾截圖
我希望我的問題是多一點理解。
我不知道如何解決這個問題。有人有個想法嗎? 謝謝!
我喜歡我的窗口永遠留在每一個空間。我認爲我的窗位有問題。爲了更好地理解,我在原始文章中添加了更多信息。 – floxxxy
我已經更新了我的答案。 –
謝謝,但現在有一個其他的風格錯誤。 我做了一個視頻,很難解釋:http://dl.dropbox.com/u/1503795/SpaceChange.mpg(7.4 MB) 第一次窗口在圖標後面,經過一點「搖動」窗口級別正確匹配。 – floxxxy