java - 如何在 GWT 中设置事件边界?

标签 java gwt event-handling

我的自定义 FlowPanel 中有一个 Label,它实现了 HasDoubleClickHandlers

    final Label label = new Label("Click here to write");
    label.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            clicked();
        }
    });
    final CustomFlowPanel customFlowPanel=new CustomFlowPanel();
    customFlowPanel.addDoubleClickHandler(new DoubleClickHandler() {
        @Override
        public void onDoubleClick(DoubleClickEvent event) {
            if (event.getSource() instanceof FlowPanel) {
                doubleClicked();
            }
        }
    });
    custoFlowPanel.add(label);

问题是当我双击标签时 doubleClicked() 不应执行。 如何防止双击标签时执行doubleClicked()? 提前致谢!!!

最佳答案

您可以只检查 DoubleClickEvent 是否单击了标签,如果没有单击,则调用 doubleClicked()。

customFlowPanel.addDoubleClickHandler(new DoubleClickHandler() {           
      @Override         
      public void onDoubleClick(DoubleClickEvent event) {             
          Element clicked = event.getNativeEvent();
          if (!clicked.Equals(label.getElement())
          {
              doubleClicked();         
          }
      }     
}); 

关于java - 如何在 GWT 中设置事件边界?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6516862/

相关文章:

gwt - 模块化 GWT 应用程序

GWT 的 CellTable 加载栏在刷新内容时不会显示

java - 使用UiBinder时是否需要GWT SafeHtml?

java - 5.0.0 以下版本的 Hibernate Karaf 功能

java - 无法在 linux 服务器上运行的 tomcat webapp 中保存文件

java - 使用计时器来改变对象的 alpha 几秒钟?

java - JTable:检测单元格数据变化

java - 如何抓取 "shift+anykey"的NativeEvent.getKeyCode

c++ - 保存和打开文件对话框

java - 关于eclipse中的null检查插件