如何将OSX应用程序置于前台?

5
我正在开发一款小型的 OSX 应用程序(它是一个菜单栏应用程序)。 当我最初构建/启动应用程序时,它会前台运行,所有其他应用程序都会后台运行(正如它们应该做的那样)。 当我单击另一个应用程序时,该应用程序会前置并使我的应用程序退回(正如它应该做的那样),但是当我再次单击我的应用程序时,它不会再次前置。 其他应用程序仍然是最前面的应用程序(无论是什么应用程序)。
这个问题的大问题除了它很奇怪之外,当我的应用程序不是最前面的应用程序时,它的所有悬停操作或光标操作都无法使用。
是否有一种编程方式可以强制将其放在最前面? 为什么单击它不会使它前置?...

1个回答

13

我在这个问题中找到了答案。可以通过以下任一方式完成:

[[NSApplication sharedApplication] activateIgnoringOtherApps : YES];

或者是这样:

[[NSRunningApplication currentApplication] activateWithOptions:(NSApplicationActivateAllWindows | NSApplicationActivateIgnoringOtherApps)];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接