在 OS X 上以编程方式隐藏(但不退出)应用程序

Programmatically hide (but not quit) application on OS X

在 OS X 上,是否有可能 (JDK8u40) 以编程方式隐藏应用程序,类似于用户按 Cmd-H 通常实现的效果?

我尝试过,但没有成功:

您可以在 OS X 上执行此操作,例如使用 Eclipse SWT 的 Cocoa 本机绑定。这可能不是最优雅的解决方案,但它应该可以工作。如果您在项目中包含以下依赖项(请确保在您的 运行 配置中禁用 -XstartOnFirstThread)

<dependency>
  <groupId>org.eclipse.swt.org.eclipse.swt.cocoa.macosx.x86_64.4.3.swt</groupId>
  <artifactId>org.eclipse.swt.cocoa.macosx.x86_64</artifactId>
  <version>4.3</version>
</dependency>

可以打电话

OS.objc_msgSend(NSApplication.sharedApplication().id,
                    OS.sel_hide_);

这将调用与 CMD-h 触发的完全相同的过程,因此当然只能在 OS X 上工作。