2012-02-26 68 views
2

我想制作一个全屏应用程序,显示新空间的背景,以及正常的窗口行为。基本上,当用户全屏时,我希望应用中的每个NSWindow保持相同的大小,保持在屏幕的相同位置,但移动到新的空间。这可能吗?如果是这样,这种行为的文档在哪里?带有多个窗口的OS X中的全屏应用程序?

编辑:我知道这是现在很老,但我刚刚发现customWindowsToEnterFullScreenForWindow。我用它来解决问题。代码如下,只是在其他人也有兴趣这样做。

- (NSArray*) customWindowsToEnterFullScreenForWindow:(NSWindow*)window { 
    if ([window isEqualTo:self.window]) { 
     return [NSArray arrayWithObjects:window, otherwindow, nil]; 
    } 

    return nil; 
} 

- (NSArray*) customWindowsToExitFullScreenForWindow:(NSWindow*)window { 
    if ([window isEqualTo:self.window]) { 
     return [NSArray arrayWithObjects:window, otherwindow, nil]; 
    } 

    return nil; 
} 

虽然这些都是NSWindowDelegate方法,所以一定要设置窗口的委托。否则,可能会造成一些混淆。

回答

2

应用程序一次只能在一个空间上。这是一个严格的限制。如果您想要以全屏方式管理多个空间中的多个窗口,则应该提交一个错误。

+1

这不完全是我的意思。我想让应用程序打开一个新的空间,但它的所有窗口都在这个空间。它一次只能占用一个空间。 – Justin 2012-02-26 18:11:44

+0

如果是这样,那么它已经是可能的,但只有当其他窗口是面板,而不是全窗口。 – 2012-02-26 23:31:50

相关问题