2

据我所知,在不“冻结”应用程序的情况下,特定窗口的工作表模式只能是NSSavePanels、NSOpenPanels 和NSAlerts 窗口(因为 NSAlert 不是 NSWindow 或 NSPanel 子类,但它有一个关联的窗口);例如,如果我希望通用NSPanel成为这样的工作表,我无法阻止它冻结应用程序,因为启动该工作表的唯一(?)方法是使用

[NSApp beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:]

那么,有没有办法将通用面板设置为工作表而不冻结整个应用程序?

4

1 回答 1

0

-[beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:]为您NSPanel毫无困难。

但是,如果您在同一个文档上有多个窗口,NSApp则会阻止该文档中的所有窗口,因为它实际上是文档模式,而不是窗口模式。

于 2013-06-16T19:18:39.950 回答