Gwt,如何编写Right-ClickHandler for Label?

时间:2013-04-26 04:12:22

标签: gwt label handler right-click

好的,对于标签,我们得到了ClickHandler,也就是说,当我们点击标签时它会做一些事情。

但我想做一些类似于Right-ClickHandler for Label的东西,即当用户右键点击标签时,它会做一些事情。

有人说将小部件放入DeckPanel&在它上面做RightClick Hanler。但如果我们有很多标签,那么

是否必须将每个标签放入甲板面板?

如果是这种情况那么代码可能很复杂,所以我想为标签做RightClick处理程序,就像我正常的ClickHandler一样。怎么办?

1 个答案:

答案 0 :(得分:6)

我强烈推荐this example(这有点旧,但处理上下文菜单的方法正确。)

   lable.sinkEvents(Event.ONCONTEXTMENU);
    lable.addHandler(
      new ContextMenuHandler() {
        @Override
        public void onContextMenu(ContextMenuEvent event) {
          event.preventDefault();
          event.stopPropagation();
          popupMenu.setPopupPosition(              //custom menu here
            event.getNativeEvent().getClientX(),
            event.getNativeEvent().getClientY());
          popupMenu.show();
    }
    }, ContextMenuEvent.getType())

<强> Continue reading ....