我正在经营一个特制的NSWindow管理员作为模式窗口。
首先,我把它展示成这样:
ProgressWindow *pWin = [[ProgressWindow alloc] initWithWindowNibName:@"ProgressWindow" andXmlContent:nil];
[NSApp runModalForWindow:[pWin window]];
然后我想在进步窗口的NSWindow主计长内部把它从中解开。为了这样做,我设置在窗口Did Load 函数的代码(仅测试)下面:
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:2]];
[self testMethod];
如预期的那样,它称为2秒后测试方法。 方法应该关闭模式窗口, 但我似乎找不到方法。 我尝试了 < code> [NSApp stopModal] , < code> [NSApp 中止模式] , < code>[self close] , 把它制作成工作表, 并调用 [self. windowordOut:nil]; [NSApp endSheet:self. window];
但似乎没有起作用。 要么什么事都没有发生, 要么窗口在另一个地点重新打开。 我不知道为什么会发生这种情况, 初始化代码只被调用一次 。
有人知道怎么关吗?