1

Objective C プログラミングは初めてです。「キャンセル」と「OK」の 2 つのボタンを備えた UI を持つアプリケーションを作成しました。[キャンセル] をクリックすると、アプリケーションが終了し、[OK] をクリックすると何らかのタスクを実行する必要があります。すべて正常に動作します。これらのボタンの間をタブで移動でき、スペース ボタンをクリックして必要な機能を呼び出すことができます。私がやりたいのは、フォーカスが「キャンセル」ボタン(Tabキーを使用)にあるときにキーボードからEnterボタンをクリックすると、アプリケーションが終了し、同様に、フォーカスが「OK」ボタンにあるときにEnterをクリックすることです必要な機能。

「OK」ボタンと「キャンセル」ボタンの「setKeyEquivalent」プロパティも設定しましたが、一意のキー等価物しか設定できません。また、ボタンのタイトルまたはタグ値を読み取ってから、必要な機能を呼び出そうとしましたが、機能しませんでした。もうまくいきませんでした。

UIで選択したボタンに応じて、入力ボタンを使用してさまざまな機能を呼び出す方法を教えてください。

4

1 に答える 1

1

ボタンに相当するキーを設定したくないと思います。keyDown: をオーバーライドし、Enter キーをテストしてから、どのボタンにフォーカスがあるかに応じて適切な処理を行います (これは、NSWindow の firstResponder メソッドを使用して判断できると思います)。

于 2012-05-09T05:50:28.427 に答える