这可能是我想念的简单事情,但这就是发生的事情:
我正在创建一个菜单项应用程序(应用程序是代理=是)
所以我有一个MainViewAppDelegate运行整个事情。当点击菜单项上的按钮时,它会被检测到。
然后我上传了NSWindowController:
#import <Cocoa/Cocoa.h>
@interface UploadView : NSWindowController
- (IBAction)upload:(id)sender;
@end
的.m:
-(id)init {
if (! (self = [super initWithWindowNibName:@"UploadView"])) {
// Initialization code here.
return nil;
}
return self;
}
在MainViewAppDelegate中,当按下该按钮时,我执行:
if (!uploadView) {
uploadView = [[UploadView alloc] init];
}
[uploadView showWindow:self];
现在,只要我没有点击xcode,这就行了。一旦我这样做(比如我将chrome设为活动标签),即使我回到xcode,它也不再起作用。
有什么想法吗?
答案 0 :(得分:1)
我在UploadView代码中没有看到任何问题。但是,您可以尝试将xib中的UploadView面板连接到File的所有者窗口并尝试。我现在创建了一个类似的演示并尝试过,我没有看到任何问题。
答案 1 :(得分:0)
我必须补充的是:
[NSApp activateIgnoringOtherApps:YES];
在尝试打开窗口之前。