我们使用ag-grid,我需要控制根据鼠标和键盘事件生成上下文菜单项的方式。在这种情况下,如果按下alt +右键单击(而不是右键单击),则需要添加一个可选的上下文菜单项。简单地绑定事件监听器对我们没有帮助,因为上下文菜单项是在触发事件监听器之前绑定的,所以我无法检查用户是否按下了它们。 任何建议将不胜感激。
答案 0 :(得分:2)
根据文档Configuring the Context Menu,您可以使用gridOptions.getContextMenuItems
功能提供上下文菜单项。在这里您可以找到是否按下 Shift 或 Ctrl 。
if(this.event.altKey === true) {
result.push({name: 'Alt key is pressed', disabled: true});
}
if(this.event.shiftKey === true) {
result.push({name: 'Shift key is pressed', disabled: true});
}
看看我创建的这个小块:Context Menu Example
根据您在鼠标右键单击时所按的键,一项将被添加到上下文菜单中。