我想复制NSApp的-runModalForWindow:方法,而不会让我的应用程序的其余部分变得无用。我想使用NSWindow将用户锁定一段时间,让我的应用程序执行大量操作,然后关闭NSWindow。
我知道如何打开NSWindow,但禁用其他开放的窗户是挑战。这可以实现吗?
提前致谢。 瑞奇。
答案 0 :(得分:0)
-[NSApplication beginModalSessionForWindow:]
和朋友们应该这样做:
NSModalSession session = [NSApp beginModalSessionForWindow:modalWindow];
while (1) {
if ([NSApp runModalSession:session] != NSRunContinuesResponse)
break;
// do stuff
}
[NSApp endModalSession:session];
请注意,在背景中做一堆事情通常是个好主意,我。即使用Grand Central Dispatch。