我有一个基于NSTable的视图,包含十行或更多行和五列。要填充此表的数据,我有一个包含5个数组的字典。因此每个字典对象都适用于每一列。
现在我需要在点击任何单元格时获取信息。我正在使用tableViewSelectionDidChange
代表获得有关单元格选择的通知。使用这个,我只能获得[myTableView selectedRow]
来了解所选择的行。我怎么知道哪一列是行。例如:我选择/点击第三列的第五行。现在我需要知道它被点击了哪个列,以便我可以从字典中提取所需的对象。
任何线索?
答案 0 :(得分:1)
您可以覆盖tableView的mouseDown:event并将单击的列作为:
- (void)mouseDown:(NSEvent *)theEvent
{
NSPoint globalLocation = [theEvent locationInWindow];
NSPoint localLocation = [self convertPoint:globalLocation fromView:nil];
NSInteger clickedCol = [self columnAtPoint:localLocation];
[super mouseDown:theEvent];
}
或者您可以使用NSTableView委托方法:
tableView:didClickTableColumn: