複数行の入力を許可するために NSTextView を使用しています。ただし、私のアプリの性質上、ユーザーは TAB を押すと次の入力要素に移動しやすくなります。
Enterキーの改行動作を維持しながら、TABでNSTextViewを終了するにはどうすればよいですか?
複数行の入力を許可するために NSTextView を使用しています。ただし、私のアプリの性質上、ユーザーは TAB を押すと次の入力要素に移動しやすくなります。
Enterキーの改行動作を維持しながら、TABでNSTextViewを終了するにはどうすればよいですか?
-textView:doCommandBySelector:
テキスト ビューのデリゲートで実装できます。
- (BOOL)textView:(NSTextView *)aTextView doCommandBySelector:(SEL)aSelector {
if (aSelector == @selector(insertTab:)) {
[[aTextView window] selectNextKeyView:nil];
return YES;
}
return NO;
}
http://developer.apple.com/documentation/Cocoa/Reference/NSTextViewDelegate_Protocolを参照してください。
これをサブクラスに実装する必要があります。
そのようなTranslate Textのサブクラスを作成しました。BSD ライセンスの下で使用することを歓迎します。ヘッダーと実装ファイルは次のとおりです。
… Enter キーの改行動作を維持しながら?
私の主な目的は、ユーザーが Enter キーを押したときにターゲットにアクションを送信することでした。また、ビューからフォーカスをドロップするようにしました。ただし、どちらもコード内の明示的なステートメントです。そのコードをコメントアウトするか削除するだけです。