3

私はCocoaとLionでこの問題について自殺してきましたが、誰かがこの問題に遭遇し、(うまくいけば)解決策を見つけたかどうか疑問に思っていました。

NSWindowControllerがNSWindowのsetFrameOrigin:メソッドを使用してウィンドウの位置を割り当てる非常に単純なプロジェクト(コードはここからダウンロードできます:http://cl.ly/2T0N2C1A3K1r2h1q0R1e )があります。

これは最初の実行ではA-OKで機能しますが、ユーザーがウィンドウを移動すると、アプリを終了して再起動すると、setFrameOrigin:コマンドを使用する代わりに、ウィンドウが以前の場所に復元されます。

NSWindowControllerはすでにカスケードと自動保存が無効になっているため、発生しないはずです。

また、Snow Leopardでテストしたところ、コードは100%機能します。これはLionのみの問題です。

何か案は?

4

1 に答える 1

10

これがLionの「ユーザーインターフェイスの保存」機能であり、 アプリプログラミングガイドに記載されています。

簡単な解決策は、ウィンドウの属性ペインで[復元可能]のチェックを外すことです。

于 2011-12-23T00:36:24.353 に答える