2009-01-16 65 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')命令事件,例如,如果您願意就像這個行爲被事件實現一樣。

相關問題