2008-09-16 17 views
5

ユーザーがEscキーまたはEnterキーを押したときに、Cocoaアプリケーションのダイアログを閉じるにはどうすればよいですか?私はOKボタンを持っています、それはデフォルトボタンにすることは可能ですか?CocoaダイアログのEscキーとEnterキー

答えて

7

NSAlertクラスまたはNSRunAlertPanelファミリのファンクションファミリまたはNSBeginAlertSheetファミリのファンクションファミリを使用してアラートパネルを表示すると、デフォルトおよびキャンセルボタンが自動的にサポートされます。

OK/Cancelボタンが必要なシートを提示していて、上記のいずれも使用していない場合は、属性インスペクタを使用してInterface Builderで適切なキーボードに相当するボタンを割り当てる必要があります。

警告またはドキュメント/ウィンドウモードのシートではないダイアログを表示している場合は、しないでください。 :)ドキュメントモーダルアラートはMac風のものではなく、設定ウィンドウのようなものに使うべきではありません。

+0

素晴らしいです、ありがとうございます! –

+4

警告があります:NSRunAlertPanel/NSAlertを使用しています。エスケープ・キーは、そのボタン「キャンセル」を呼び出すと機能します。ローカライズされたアプリでどのように動作するかわかりません。 –

+0

Appleによって承認された翻訳(言語用語集ファイルに記載されています)に固執していれば、ローカライズされたアプリケーションでうまく動作します。あなたの翻訳者はこれについて知っておくべきです。彼/彼女がしなければ、誰かを見つける。 – alastair

関連する問題