NSAppオブジェクト(別名[NSApplication sharedApplication])がある場合、現在アクティブなNSTextViewを取得するにはどうすればいいですか?挿入ポイントが現在点滅しています(存在する場合)。 :-)Cocoa:現在どの点のNSTextViewが点滅していますか?
私は[[NSApp keyWindow] contentView]行くと全体のビュー階層を横断しようとしたが、それはあまりにも難しいと思われることができます。理想的なコードは[NSApp focusedTextView]です。
私はアプリやウィンドウのfirstResponderをしようと試み、そしてまたfieldEditor:forObject :,が、これは(私には、少なくとも)面白い何も返しません。
ところで、システム全体の現在のテキストビューを取得する方法が分かっていれば、それはさらにクールです(アクセシビリティAPIは動作しません。つまり、Cocoa NSTextViewは返されません)。
おかげ
ありがとうございます。アプリがフィールドエディタをまったく使用しない場合はどうなりますか?たとえば、Pagesではnullを返します。基本的には、セレクタsetInsertionPointColor:に応答する現在のオブジェクトを見つける必要があります。他に何か試してみませんか? –
ああ、私は、ウィンドウのfirstResponder自体が通常setInsertionPointColor:に応答することを発見しましたが、Mail.appではメッセージエディタを表示するために何らかの種類のWebViewを使用しています。 –