旧窗关闭后新窗口的位置

时间:2010-04-08 18:47:40

标签: cocoa macos nswindow

我有一个允许多个窗口的应用程序。我有一个奇怪的错误,如果我反复打开和关闭窗口,新窗口会在屏幕上下方和下方定位。如果我打开窗户,我会期待这一点,但似乎OS X窗口平铺机制不知道我的窗户何时关闭。

潜在相关说明:我正在使用垃圾收集。这不是基于文档的应用程序。当我关闭一个窗口时,相应的菜单项将从“窗口”菜单中删除。

任何关于我可能做错的提示都将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:0)

我记得前一段时间在我自己的应用程序中遇到此问题。据我所知,这只是Apple做事的方式。我在其他应用程序中尝试过同样的事情,这是同一个故事。

Apple的documentation表示默认情况下窗口会级联,但如果您想更改默认行为,则可以使用cascadeTopLeftFromPoint:方法。

答案 1 :(得分:0)

如果您希望窗口在重新打开时保持其位置,请在Interface Builder中为窗口的Autosave字段设置一个值。

您也可以使用-setFrameAutosaveName:以编程方式设置此内容。