0

私のアプリケーションでは、画面上に同時に 4 ~ 5 個のウィンドウがあります。作業中に、一部のウィンドウが他のアプリのウィンドウの背後に戻ることがあります (xcode や safari の背後など)。次に、アプリケーションのウィンドウの 1 つをアクティブにすると、他の 3 ~ 4 個のウィンドウが背面に残ります。

アプリのウィンドウの 1 つをアクティブにしたときに、すべてのアプリのウィンドウを前面に表示する方法はありますか?

ps [NSApp windows] を使用してループ内で orderFrontRegardless を呼び出すことができることはわかっていますが、ウィンドウの 1 つがアクティブになった瞬間を捉える方法がわかりません。

どんな種類の助けやヒントも本当に感謝しています!

4

1 に答える 1

2

このコードは私のためにトリックを行います:

-(void) applicationDidBecomeActive:(NSNotification *)notification
{
    // TODO: go over windows here and bring them active
    for (NSWindow * window in  [NSApp orderedWindows]) {
        [window orderFrontRegardless];
    }
}

このコードが機能するように、ファイルをアプリのデリゲートとして設定することを忘れないでください。

于 2013-05-22T01:16:26.987 に答える