Cocoa中的ShowWindow / HideWindow

时间:2011-02-09 18:16:41

标签: cocoa macos appkit

在Carbon中,您可以使用HideWindow(WindowRef)和ShowWindow(WindowRef)更改窗口的可见性。

在Cocoa我知道你可以调用NSWindow的orderOut:隐藏和orderFront:,orderBack:或orderWindow:relativeTo:把它放回到屏幕上,但没有一个尊重窗口相对于其他窗口的顺序最后可见。

例如,如果我有两个窗口,一个在另一个之上,然后调用orderOut:在后窗上,我如何再次显示窗口,使其仍然在前窗后面而不调用orderWindow:对于relativeTo:

我现在唯一能想到的就是记住窗口正上方的窗口ID,然后使用orderWindow:relativeTo:再次显示它时,但我还没有想过如果上面的窗口是什么会发生什么在后窗再次可见之前关闭。

1 个答案:

答案 0 :(得分:1)

我认为Cocoa中没有任何方法可用。我猜你需要模仿你的想法。

顺便说一句,如果从以

命令的四个窗口开始,那么碳的行为是什么
 A B X C D E

然后隐藏X

 A B C D E

现在用户重新排序它们,并删除一些:

 E A C

然后再次显示X。在这种情况下,X在哪里进入了碳?