我使用的NSTableView
与IB中的NSMenu
相关联。
现在,我可以右键单击选定的单元格,然后选择所选项目的上下文菜单。
这一切都很好,但是,TableView可以显示未选中项目的上下文菜单:
所以现在该操作适用于列表中的所选项目,而不是实际右键单击的项目:我想打开6
,但最终会在浏览器中打开1
。
这就是我处理点击事件的方式:
- (IBAction)openInBrowserClicked:(id)sender {
Issue *i = self.issuesController.selectedObjects.lastObject;
[[NSWorkspace sharedWorkspace] openURL:i.URL];
}
答案 0 :(得分:2)
您可以使用表格视图clickedRow
属性/方法来确定点击所在的行。接下来从您的数据源获取所单击行的对象,即它。