我有一个NSTextField
由自定义视图嵌套的,我想更改连续多次单击的默认行为(双击、三次单击等),类似于文本节点 MindNode 的行为(见下图)。
我希望第一次单击以“激活”文本字段,然后从头开始(例如重置事件的单击计数)。
我有以下想法,但我不知道如何实现它们以及它们是否真的有意义:
- 以某种方式更改使用时间
+[NSEvent doubleClickInterval]
并减慢第二次点击。 - 以编程方式减少点击次数?
- 使用 使 NSTextField 不可选择
-hitTest:
,将点击转发到超级视图,更改文本字段的某些参数并接受下一次点击。在这种情况下,第二次点击的点击次数仍然是 2。 - 覆盖
-mouseDown:
而不是调用超级。这破坏了 NSTextField 的选择功能。
我希望有一种更简单的方法来实现这一点,但我忽略了这一点。
感谢您的回答!
这是问题的图形表示: