2

これは十分に簡単なはずですが、誰かがこれを行う方法についてのポインタを教えてもらえますか?NSTextViewをサブクラス化し、drawInsertionPointInRect:color:turnedOn:を使用する必要があるようですが、これをどのように行うのでしょうか。大きなカスタマイズはしたくないのですが、少し厚めにしたり、少し短くしたりするだけかもしれませんが、問題はどこにあるのでしょうか。

ありがとう、

rc

4

1 に答える 1

0

NSSearchFieldaはのサブクラスであり、ではないため、これは実際には単純ではNSTextFieldありませんNSTextView。ただし、それぞれNSTextFieldがプロキシNSTextViewを使用して描画を行い、このプロキシNSTextView(フィールドエディタと呼ばれる)は現在のウィンドウによって維持されます。したがって、実行したいのは、カスタムNSTextViewサブクラスを作成し、それをウィンドウコントローラー(またはウィンドウデリゲートとして使用するもの)のどこかにインスタンス化してから、次のメソッドを作成することですwindowWillReturnFieldEditor:toObject:

このメソッドでは、toObjectが検索フィールド(またはウィンドウ内のすべての検索フィールドに対してオーバーライドする場合は任意の検索フィールド)であるかどうかを確認してから、カスタムを返しますNSTextView。それ以外の場合nilは、デフォルトのフィールドエディターに戻ります。デフォルトの動作。

于 2013-02-28T02:59:45.023 に答える