2011-08-04 61 views
1

我有一个可以隐藏窗口的Mac OS X应用程序。Mac OS X:检测已打开的应用程序重新打开

当用户点击停靠栏中的应用程序图标(或在终端中打开-b com.mycompany.myapp)时,我希望再次显示此窗口(这是一个Qt应用程序,所以setVisible(true )的事情是已知的)。

如何捕捉应用程序激活事件?

感谢您的任何帮助。

+1

这个问题的[陷阱click事件在Mac上使用Qt Dock图标](http://stackoverflow.com/questions/3767559/trap-click-event-on-dock-icon-using-qt-重复在-MAC)。 – 0xced

+0

@ 0xced:谢谢你的链接,我会检查。 – moala

回答

3

这是一个Apple事件,因此您需要使用Apple Event Managercore suitereopen-application事件注册处理程序。

这就是你在碳中如何做到的。您将问题标记为[碳]而不是[qt],因此我假设您需要碳解决方案而不是Qt解决方案。

+0

一个Qt解决方案也将是不错的:) – moala

+0

这里是您的解决方案AE的HOWTO:http://th30z.blogspot.com/2008/08/qt4-mac-dock-icon-click_2711.html – moala

+0

嗨,任何方式通过自定义处理(基本上只是隐藏它)来检测标题栏少的应用是否最小化,然后在启动板中单击?如果点击了停靠栏图标,我可以得到一个处理程序,当隐藏应用程序(最小化)时,我需要获得类似的通知,并单击启动板图标/应用程序文件夹图标,以便我可以取消隐藏它。 – SexyBeast

相关问题