2011-04-07 4 views
3

mac 메뉴 바 위에 나타날 수있는 NSWindow (또는 다른 것)를 만들고 싶습니다. TeamViewer가 "마우스"이미지로 수행하기 때문에 이것이 가능하다는 것을 알고 있습니다.NSWindow (또는 다른 것)가 메뉴 바 위에 나타나도록하십시오.

예 : http://i.stack.imgur.com/6iZbG.png

그들은 그것을 어떻게해야합니까? (또는 어떻게 할 수 있습니까?)

+1

답변이 없지만 창 수준을 살펴보십시오. (http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSWindow_Class/Reference/Reference.html). 어쨌든, 당신은 일반적으로 그런 기본적인 UI 원칙을 깨고 싶지 않습니다. – moritz

답변

6

moritz의 의견에서 언급 한대로 window levels을 확인하고 싶습니다. NSMainMenuWindowLevel 위의 모든 레벨이 메뉴 표시 줄 위에 나타나야합니다.

정말로 다른 모든 것보다 위에 있고 싶다면 차폐 윈도우 레벨 (기술적으로는 일반 NSWindow 윈도우 레벨의 일부는 아님)을 사용할 수 있습니다. Shielding 창은 화면을 차지하는 전체 화면 앱을 대상으로하지만이 작업을 수행하는 일반 창을 사용할 수 있습니다. 좋은 영향을주기 위해 돋보기 유형 앱이 있습니다. 또한

[myWindow setWindowLevel:CGShieldingWindowLevel()]; 

이 일반적으로 나쁜 생각하고, 모리츠 '코멘트를 언급으로, 그래서 당신은 그렇게에 대한 좋은 이유를했는지 확인하십시오.

+0

네, 내가 뭘하고있는 이유는 당신의 돋보기와 TeamViewer의 마우스와 비슷합니다. – jburns20