如何使状态栏应用程序捕获'applicationDidResignActive:'与其他状态栏应用程序?

时间:2012-12-31 15:46:56

标签: objective-c xcode macos cocoa nsapplication

现在我正在开发状态栏应用程序,我需要知道应用程序何时失去焦点。所以我目前正在使用applicationDidResignActive:,但是当我打开另一个状态栏应用程序菜单时,这种情况并没有发现。
每当我的应用程序失去焦点时,即使打开另一个状态栏应用程序,我怎样才能使applicationDidResignActive:(或任何其他方法)捕获?

1 个答案:

答案 0 :(得分:3)

我认为你真正想要的是当窗口失去焦点时。

您可以使用以下NSWindowDelegate方法:

windowDidResignMain:

您还必须将canBecomeMainWindow设置为YES

- (BOOL)canBecomeMainWindow {
    return YES;
}

确保将其连接到代表,你应该没问题。