3つのテキストフィールドを持つ単純なフォーム(NSWindow)があります。NSWindowinitialFirstResponder
は、最初のフィールド()を「指し示しています」NSTextField
。3つのテキストフィールドはすべて、を介して相互に循環的にリンクされていnextKeyView
ます。
私が抱えている問題は、Xcodeからアプリケーションを起動すると、アプリケーションが閉じられたときに最後にアクティブだった(フォーカスされている)テキストフィールドにフォーカスされることです。
たとえば、テキストフィールドにA、B、Cという名前を付け、AにinitialFirstResponder
設定した場合、アプリケーションを起動してBにフォーカスし、アプリケーションを閉じると、次に起動したときにBにフォーカスが移ります。
それはなぜですか、そしてどのようにこれを修正しますか?
(これが些細な質問である場合は申し訳ありませんが、これらはココアでの私の最初のステップです...)
編集:
これはOSXLion 10.7.1、Xcode4.1にあります。
編集2:
これを「修正」する方法を見つけました...メインウィンドウ(またはそれに関する任意のウィンドウ)XIB / NIBファイルで、[属性インスペクター]をクリックし、[復元可能]チェックボックスをオフにします。これで、アプリケーションは最後の位置を保存しないため、initialFirstResponder
シーイングが尊重され、それに応じてフォローされます。