1

这是我的代码:

if ([window isVisible]) {
   [NSApp activateIgnoringOtherApps:YES];
   [window orderOut:nil]; 
   return;
} 
[NSApp activateIgnoringOtherApps:YES];
[window makeKeyAndOrderFront:nil];
return;

但是如果用户单击/更改当前窗口,然后单击菜单栏,它将关闭窗口。我该如何阻止它?

4

1 回答 1

1

不是测试窗口是否在 ( isVisible) 中排序,而是测试它是否是活动窗口 ([NSApp mainWindow][NSApp keyWindow]—<a href="http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/WinPanel/Concepts /ChangingMainKeyWindow.html#//apple_ref/doc/uid/20000236-128794" rel="nofollow noreferrer">详细信息)以及您的应用程序是否处于活动状态([NSApp isActive])。

于 2009-12-15T10:47:29.650 回答