1

ですから、この質問をグーグル検索する方法すらよくわかりません...しかし、NSWindowを作成し、他のすべてのウィンドウ/アプリの背面に配置して、すべてのMission Controlスペースに表示したいと思います(まだ後ろ)。

これを行う他のアプリケーションを見たことがあるので、それが可能であることはわかっていますが、方法がわかりません。

(私は、さまざまなスペースを切り替えることができるMission Controlと呼ばれるLionの機能について言及しています。)

4

2 に答える 2

2

答えが見つかりました。ウィンドウがすべての「スペース」(ミッションコントロール)に表示されるようにするためのメソッド/列挙があります。

[self.window setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces];

そして、ウィンドウをできるだけ奥に保つ方法。

[self.window setLevel:kCGDesktopIconWindowLevelKey - 1];

これら 2 つの方法を使用するだけで、私が要求したとおりに実行されます。ただし、ミッションコントロールから降りたときにアニメーションしないようにする方法があればいいのにと思います(私の知る限りではありません)。

于 2013-01-19T06:20:42.107 に答える
0

NSWindow のlevelおよびcollectionBehaviorプロパティを設定します。

使用するウィンドウ レベルは、ウィンドウからどのような動作を求めているかによって異なります。使用可能なウィンドウ レベルの定数は、CoreGraphics/CGWindowLevel.h にあります。試してみることをお勧めしCGWindowLevelForKey(kCGDesktopIconWindowLevelKey) ± 1ます。

どのコレクション動作を指定するかは、求めている動作によっても異なります。NSWindowCollectionBehaviorStationary | NSWindowCollectionBehaviorCanJoinAllSpacesあなたの質問の簡単な説明は、それが良い出発点であることを示唆しています。

于 2013-01-19T06:17:38.350 に答える