如果选择了一行,则在 NSTableView 上显示菜单
Display menu on NSTableView if a row is selected
我在 NSTableView 的出口有一个菜单。当我右键单击 Table 视图时,它会显示菜单,但如果没有选择行,我不想显示菜单。当我右键单击并且没有选择行时,如何停止显示菜单?
我试过:
validateMenuItem
但它从未被调用
我试过 NSMenuDelegate 及其
func menuWillOpen(_ menu: NSMenu) { }
和
func menuNeedsUpdate(_ menu: NSMenu) { }
但是 none 其中 return 任何我可以设置为不显示菜单的东西,如果...
建议的重复项要求在单击特定单元格时阻止显示上下文菜单。这个问题是关于在没有选择 ROW 时防止菜单显示的。
非常简单:
实施
NSMenuDelegate
并添加此方法:
func menuWillOpen(_ menu: NSMenu) {
if myTableView.selectedRow < 0 {
menu.cancelTrackingWithoutAnimation()
}
}
我在 NSTableView 的出口有一个菜单。当我右键单击 Table 视图时,它会显示菜单,但如果没有选择行,我不想显示菜单。当我右键单击并且没有选择行时,如何停止显示菜单?
我试过:
validateMenuItem
但它从未被调用
我试过 NSMenuDelegate 及其
func menuWillOpen(_ menu: NSMenu) { }
和
func menuNeedsUpdate(_ menu: NSMenu) { }
但是 none 其中 return 任何我可以设置为不显示菜单的东西,如果...
建议的重复项要求在单击特定单元格时阻止显示上下文菜单。这个问题是关于在没有选择 ROW 时防止菜单显示的。
非常简单:
实施
NSMenuDelegate
并添加此方法:
func menuWillOpen(_ menu: NSMenu) {
if myTableView.selectedRow < 0 {
menu.cancelTrackingWithoutAnimation()
}
}