0

NSPopUpButton単純なサブクラスもありNSPopUpButtonます。サブクラスには次のものがあります。

- (BOOL)acceptsFirstResponder { return YES; }

- (BOOL)refusesFirstResponder { return NO; }

これで、ボタンをファーストレスポンダーにするようにウィンドウに指示するのは簡単で、起動時に機能しますが、NSTextFieldからタブで移動してnextResponderとしても発生する必要があります。NSTextFieldにフォーカスが移ると、ポップアップボタンに戻ることができないように見えます。

ここで何が欠けていますか?本当にシンプルなはずです。

回答:firstResponderはここで使用するものではありません。サブクラスが必要であり(私が推測したように)、YESを返すには以下をオーバーライドする必要があります:( - (BOOL)canBecomeKeyView { return YES; } Peter Hoseyに感謝)

4

1 に答える 1

4

NSPopUpButtonサブクラスで、canBecomeKeyView代わりにオーバーライドしてみてください。

于 2013-03-22T21:16:21.683 に答える