私のアプリでは、NSComboBoxを含むシートを表示します。ユーザーが矢印キーを使用してメニューからエントリを選択し、次にReturnキーを使用してそれを選択すると、シートの[OK]ボタンも操作されます。これは、キーに相当するものとしてReturnキーがあるためです。これらのリターンキーがOKクリックとして機能するのを止めたいのですが。多くのことを試した後(悪夢に変わり始めたNSComboBoxのサブクラス化は別として)、コンボボックスが最初のレスポンダーであり、現在のイベントがリターンキーのキーアップである場合、OKクリックを無視しようとしていますが、NSPanelはシートはからサブクラス化され、常に現在のファーストレスポンダーとして自分自身を返します。私はフィールドエディタを期待していましたが、私が得るのはNSPanelだけです。
1)これを行うためのより良い方法はありますか?ユーザーは、マウスを動かすのではなく、キーボードベースのデータ入力を本当に望んでいます。
2)これが最善の方法である場合、コンボボックスがファーストレスポンダーであることをどのように判断できますか?
どんな助けでもありがたいことに受け入れました。確かにこれは以前に対処されたことがありますか?
アンディ牧師
質問する
361 次