默认情况下,双击触发器在NSTableView中重命名。NSTableView双击/重命名
我怎样才能让双击而不是触发我自己的自定义代码(如打开双击文件)?
还有:如何让重命名像在Finder中,您首先单击,然后再次单击并快速移动鼠标指针?这就是在Finder中触发重命名的方式。我想在NSTableView中那样。
默认情况下,双击触发器在NSTableView中重命名。NSTableView双击/重命名
我怎样才能让双击而不是触发我自己的自定义代码(如打开双击文件)?
还有:如何让重命名像在Finder中,您首先单击,然后再次单击并快速移动鼠标指针?这就是在Finder中触发重命名的方式。我想在NSTableView中那样。
根据文档,NSTableView有-setDoubleAction:。单击一次选择一行,然后单击要编辑的文本单元格的行为就像Finder默认情况下(并且这与Finder都没有任何关系,请快速移动指针 - 尝试它)。
点击一次选择,然后再次点击开始重命名。点击两次(足够快是双击),并处理“双重”操作。
我想补充一些信息,如果你点击两次文字,它将进入编辑模式,而不是执行你的自定义动作。 为了执行您的操作并阻止进入编辑模式,单元格也应该被设置为不可编辑,如@JWWalker所写。 – xyz 2012-02-25 21:09:57
Xcode表视图连接检查器有一个等效的已发送操作:“doubleAction”。控制 - 从它拖动到你的控制器(或到它的头文件来创建操作方法) – 2018-01-30 19:32:50
@PaulCollins整洁!我想知道这是什么时候加入的。很久以前,我知道它根本不在IB中。 – 2018-02-06 18:04:57
您必须使文本单元格不可编辑以便您的表格视图获得双击操作消息。
你看过NSBrowser吗?它可能会更好地满足您的需求,因为它是Finder使用的。 – theMikeSwan 2010-08-04 21:13:10
NS浏览器的双重动作和点击编辑功能与表格视图相同(这是OP询问的内容)。 – 2010-08-04 22:29:34