如何获取当前正在关注的NSTableView
中的行索引?左键单击时,行被选中,但是当右键单击该行时我需要索引,即当用户在其上打开上下文菜单但该行确实获得焦点时,可能不会选择该行。我在文档中找不到有关如何执行此操作的任何详细信息。
答案 0 :(得分:1)
您可以从tableView.clickedRow
获取右键单击的行索引。请注意,如果用户右键单击选定(突出显示的)行,系统将“#34;关注" 所有选定的行(假设有多个选定的行;您可以在Finder中尝试)。所以你可能也想考虑到这一点。
可能的实施:
int clickedRow = tableView.clickedRow;
NSIndexSet *focusedIndexes;
if (clickedRow != -1) {
if ([tableView isRowSelected:clickedRow]) {
focusedIndexes = tableView.selectedRowIndexes;
} else {
focusedIndexes = [NSIndexSet indexSetWithIndex:clickedRow];
}
// do what you desire with focusedIndexes
}