Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 使应用程序在NSWindow下订单时失去焦点_Objective C_Cocoa_Nswindow - Fatal编程技术网

Objective c 使应用程序在NSWindow下订单时失去焦点

Objective c 使应用程序在NSWindow下订单时失去焦点,objective-c,cocoa,nswindow,Objective C,Cocoa,Nswindow,我使用上面的代码使我的应用程序在需要显示窗口时获得焦点,并且我想使应用程序在隐藏窗口时失去焦点 NSApplication *thisApp = [NSApplication sharedApplication]; [thisApp activateIgnoringOtherApps:YES]; [self.window orderFrontRegardless]; 上面的代码不能解决这个问题。我该怎么做?如果您愿意隐藏应用程序的所有窗口,您可以使用[[NSApplication shared

我使用上面的代码使我的应用程序在需要显示窗口时获得焦点,并且我想使应用程序在隐藏窗口时失去焦点

NSApplication *thisApp = [NSApplication sharedApplication];
[thisApp activateIgnoringOtherApps:YES];
[self.window orderFrontRegardless];

上面的代码不能解决这个问题。我该怎么做?

如果您愿意隐藏应用程序的所有窗口,您可以使用
[[NSApplication sharedApplication]hide:nil]
。这将自动激活行中的下一个应用程序。如果您想激活另一个应用程序,但仍将应用程序保留在屏幕上,这会有点困难。对于Mac OS X 10.6+,您可以使用该类在激活前查找当前应用程序,然后在激活后重新激活它。

如果您愿意隐藏应用程序的所有窗口,则只需使用
[[NSApplication sharedApplication]hide:nil]
。这将自动激活行中的下一个应用程序。如果您想激活另一个应用程序,但仍将应用程序保留在屏幕上,这会有点困难。对于Mac OS X 10.6+,您可以在激活前使用该类查找当前应用程序,然后在激活后重新激活它。

谢谢,但是您忘记了隐藏的参数,它应该是这样的[[NSApplication sharedApplication]隐藏:nil]谢谢,但是您忘记了隐藏的参数,它应该是这样的[[NSApplication sharedApplication]隐藏:无]
[self.window orderOut:self];
[self.window resignMainWindow];
[self.window resignKeyWindow];