我在GWT应用中使用RichTextArea。我想在RichTextArea中添加一个上下文菜单:
public class MyRichTextArea extends RichTextArea implements HasContextMenuHandlers {
public HandlerRegistration addContextMenuHandler(ContextMenuHandler h) {
return addDomHandler(h, ContextMenuEvent.getType());
}
}
(...)
myRichTextArea.addContextMenuHandler(new ContextMenuHandler() {
public void onContextMenu(ContextMenuEvent event) {
contextMenu.show();
}
});
但是,只有当我右键单击RichTextArea的边框时,才会显示上下文菜单。如果我右键单击RichTextArea,例如在包含的文本上,显示浏览器的默认上下文菜单。
如何显示自己的上下文菜单?
答案 0 :(得分:1)
防止默认上下文记忆:
myRichTextArea.addDomHandler(new ContextMenuHandler() {
@Override public void onContextMenu(ContextMenuEvent event) {
event.preventDefault();
event.stopPropagation();
// do what you want to do instead
}
},ContextMenuEvent.getType());
答案 1 :(得分:0)
我会找一个方法,告诉你富文本区域有焦点,比如hasfocus,或者更好,一个事件监听器(addFocusListener)告诉你什么时候鼠标点击鼠标右键鼠标右键按钮?
这有意义吗?