私の最終的な目標は、デフォルトで NSTextField を選択して、ユーザーが最初にテキスト フィールドをクリックしなくても入力を開始できるようにすることです。
NSViewController によって制御されるビューがあります。ビューには、いくつかのテキスト フィールドが含まれています。NSView と NSWindow はどちらもカスタム サブクラスです。テキスト フィールドはサブクラス化されません。単なる標準の NSTextField です。
ビューコントローラーのawakeFromNIB内には、次のコードがあります。
[[[NSApplication sharedApplication] mainWindow] makeFirstResponder:firstBox];
NSLog(@"%@",NSStringFromClass([[[[NSApplication sharedApplication] mainWindow] firstResponder] class]));
テキスト フィールドはその周りにフォーカス リングを取得し、NSLog は最初の応答者が NSTextField であることを出力しますが、入力を開始する前にテキスト フィールド内をクリックする必要があります。
フィールドが最初のレスポンダーになっているのに編集できない原因は何ですか? makeFirstResponder を呼び出すべきより良い方法はありますか?