2012-05-09 3 views
1

私はObjectivecプログラミングを初めて習得しました。私は2つのボタン "キャンセル"と "OK"を持つUIを持つアプリケーションを作成しました。 「キャンセル」をクリックすると、アプリケーションは終了し、「OK」をクリックすると何らかのタスクを実行する必要があります。すべてうまく動作します。私はこれらのボタンの間にタブすることができ、スペースボタンをクリックして必要な機能を呼び出すことができます。 私がしたいのは、フォーカスが「キャンセル」ボタン(タブキーを使用)にあるときに、キーボードから入力ボタンをクリックすると、アプリケーションが終了し、同様に、フォーカスが「OK」ボタンにあって、所望の機能性。Enterキーを押してMacで別のメソッドを呼び出す(目的c)

「OK」ボタンと「キャンセル」ボタンの 'setKeyEquivalent'プロパティを設定していますが、ユニークなキーの同等値のみを設定できます。また、ボタンのタイトルやタグ値を読み込み、機能それはあまりにも働いていなかった。

誰かが私がUIで選択されたボタンに応じて、異なる機能を呼び出すためのボタンを入力して使用することができますどのように私を導いてくださいすることができます。

+2

まず、すべてのユーザーがボタンをタブできるようにアカウントを設定しているわけではありません。第二に、持っている人のために、彼らはスペースキーが焦点を絞ったコントロールをアクティブにすることを期待しています。彼らは、別のものがフォーカスされていても、Returnキーがデフォルトコントロールをアクティブにすることを期待しています。 ReturnとEnterは2つの異なるキーであることに注意してください。後者は、フルサイズのキーボードのテンキーパッドにあります。 (私はそれがコンパクトキーボードのfn-Returnだと思う) –

答えて

1

私はあなたがキーを設定したくないと思いますあなたはkeyDownをオーバーライドしてEnterキーをテストしたいのですが、どのボタンにフォーカスがあるかによって適切なことをしてください(NSWindowのfirstResponderを使って判断できると思います) 方法)。

関連する問題