2009-01-16 67 views
0

我有一个碳C++应用程序,我想以编程方式做相当于Command-H(隐藏应用程序),这是在我的应用程序的应用程序菜单中可用。我已经研究了TransitionWindow和HideWindow的碳API,虽然这些可以隐藏我的窗口,但它们不会执行Command-H的等效功能。我查看了AppleEvent参考,我需要创建一个AppleEvent,但我没有看到一个隐藏应用程序。有什么想法吗?有没有办法以编程方式在OSX上隐藏碳应用程序?

回答

1

对不起回答我自己的问题,但ShowHideProcess()API似乎做我想做的。如果有更好的解决方案,我很乐意听到他们。

1

只是说明:隐藏窗口与隐藏应用程序非常不同。

0

我看了一下AppleEvent的参考,我需要创建一个AppleEvent,但我没有看到一个隐藏应用程序。有什么想法吗?

我不是专家,但你可以使用的AppleEvent的过程visible属性设置为false - 至少它与一个AppleScript

tell application "System Events" 
    set visible of process "xyz" to false 
end tell 

在另一方面,你的API似乎成为最直接的方式,上面的代码可能也只是使用它。

1

如果您愿意,您也可以从Carbon事件管理器(这是菜单项所做的事情,以及在处理时调用ShowHideProcess()时发送kHICommandHide('hide')命令事件,例如,如果您愿意就像这个行为被事件实现一样。

相关问题