カスタム ビューによってネストされたNSTextField
があり、テキスト ノード MindNode (下の画像を参照) の動作と同様に、連続した複数のクリック (ダブル クリック、トリプル クリックなど) のデフォルトの動作を変更したいと考えています。
最初のクリックでテキスト フィールドを「アクティブ化」してから、最初から続行します (イベントのクリック数をリセットするなど)。
次のアイデアがありますが、それらを実装する方法と、実際に意味があるかどうかはわかりません。
- どういうわけか時間を使用して変更
+[NSEvent doubleClickInterval]
し、2 回目のクリックを遅くします。 - プログラムでクリック数を減らしますか?
- を使用して NSTextField を選択不可
-hitTest:
にし、クリックをスーパービューに転送し、テキスト フィールドのパラメータを変更して、次のクリックを受け入れます。この場合、2 回目のクリックのクリック数は 2 のままです。 - オーバーライド
-mouseDown:
し、super を呼び出さないでください。これにより、NSTextField の選択機能が壊れます。
私が見落としていた、これを達成するためのより簡単な方法があることを願っています。
回答ありがとうございます。
以下は、問題をグラフィカルに表現したものです。