在没有命令键的Cocoa NSTableView中进行多项选择

时间:2009-07-20 17:29:42

标签: cocoa nstableview

有没有办法在NSTableView中实现多项选择行为,而无需用户在点击时按住命令按钮?在碳列表框中很容易做到,在鼠标按下处理期间,通过ORing在cmdKey修饰符标志中,调用HandleControlClick()函数。我是Cocoa的新手,我不清楚如何以编程方式轻松修改事件,或者这是否是最佳解决方案。

1 个答案:

答案 0 :(得分:4)

子类NSTableView并使您的表视图成为此子类的实例。在子类中,通过基于您收到的事件创建新的鼠标事件来响应mouseDown:mouseUp:,只有NSCommandKeyMask标志ORed到修饰符标志,并传递新的事件最多super

但是,我希望您的用户可以选择多个项目。另外,不要破坏Shift键 - 确保连续选择仍然有效。