我需要一种让应用程序与所有其他应用程序一起隐藏自己的方法。目前,它隐藏了其他应用程序,但我的应用程序仍然处于打开状态。我通过选项实现了这一点--单击我的按钮并将其拖动到实用程序中的“应用程序”区域。然后我选择了"hideOtherApplications“。
发布于 2014-06-16 17:55:12
好的,所以,如果你只想显示桌面,你可以做你正在做的事情,然后手动命令你自己的窗口离开。但是如果你想和桌面交互,那就行不通了。桌面是Finder的一部分,所以如果您在桌面上做事情,Finder将是最前端的应用程序,因此在那个时候不能隐藏。如果您对此没有意见,您可以隐藏除Finder之外的所有应用程序。
但实际上这里有一个系统设施。清除所有窗口,以便您可以看到桌面是任务控制的一个功能-它被列为“显示桌面”在任务控制首选项中。在我的系统里,它是F11。不幸的是,没有一个用于调用任务控制函数的公共API。不过,有个私人的,如果你喜欢的话:
void CoreDockSendNotification(CFStringRef, void*);
void toggleShowDesktop() {
CoreDockSendNotification(CFSTR("com.apple.showdesktop.awake"), NULL);
}(尽管苹果通常不支持私有API,但如果他们抓到你使用私人API,并且不能保证他们的行为正确,那么苹果很可能会把你赶出Apple,而且当Yosemite出来时,这甚至可能不起作用,因为这只是某种程度上的私有API。)
https://stackoverflow.com/questions/24235425
复制相似问题