我尝试自定义NSTableHeaderCell
来检测鼠标点击次数。在过去,我使用NSTrackingArea
或覆盖mouseDown
事件等内容,例如:
-(void)mouseDown:(NSEvent *)theEvent
{
NSLog(@"Mouse down");
}
这些方法似乎无法在NSTableHeaderCell
作为单元而非视图正常工作。
有人对检测细胞上的鼠标事件有什么建议吗?具体来说,我想抓住第一次点击(及其位置)。
答案 0 :(得分:2)
AppKit设计的方式是通过NSTableViewDelegate和
tableView:mouseDownInHeaderOfTableColumn:
'告诉代理人在指定的表格列标题中点击了鼠标按钮。'
除非您非常具体地需要在单元格中实际处理鼠标,否则在委托中实现该方法可能更容易。