我有一个Carbon C ++应用程序,我想以编程方式执行与我的应用程序的“应用程序”菜单中可用的Command-H(隐藏应用程序)相同的操作。我已经探索了TransitionWindow和HideWindow的碳API,虽然这些可以隐藏我的窗口,但它们并没有相当于Command-H。我查看了AppleEvent引用,我需要创建一个AppleEvent,但我没有看到一个用于隐藏应用程序。有什么想法吗?
答案 0 :(得分:1)
很抱歉回答我自己的问题,但ShowHideProcess()API似乎做了我想要的。如果有更好的解决方案,我很乐意听到它们。
答案 1 :(得分:1)
注意:隐藏窗口与隐藏应用程序非常不同。
答案 2 :(得分:1)
您还可以从Carbon事件管理器发送一个kHICommandHide('hide')命令事件(这是该菜单项的功能,并在处理时调用ShowHideProcess()),如果您愿意,例如,如果您愿意这个动作将由一个事件实现。
答案 3 :(得分:0)
我查看了AppleEvent参考文件,我需要创建一个AppleEvent,但我没有看到一个用于隐藏应用程序。有什么想法吗?
我不是专家,但你可以使用AppleEvent将进程的visible
属性设置为false
- 至少它适用于AppleScript
tell application "System Events"
set visible of process "xyz" to false
end tell
另一方面,您的API似乎是最直接的方式,上面的代码也可能只是使用它。