GWT:RichTextArea中的上下文菜单

时间:2009-10-23 13:59:55

标签: gwt richtextbox contextmenu

我在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,例如在包含的文本上,显示浏览器的默认上下文菜单。

如何显示自己的上下文菜单?

2 个答案:

答案 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)告诉你什么时候鼠标点击鼠标右键鼠标右键按钮?

这有意义吗?