单击事件未在 GWT 中的标签上触发

Click event not firing on label in GWT

我在 gwt 标签上创建了一个点击处理程序,但它无法触发。怎么了?同样的方法适用于其他小部件,如图标等。

 @UiField Label fileName;
 ---
 ---
public void addClickHandler() {
    fileName.sinkEvents(Event.ONCLICK);



    handler = this.addHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            event.preventDefault();
            event.stopPropagation();

            Window.alert("UI clicked");


        }
    }, ClickEvent.getType());

}

正如我在评论中指出的那样。它不起作用的原因是因为您要将本机事件处理程序添加到 this,并且像我一样,但您需要在元素上接收 DOM 事件才能处理它们。由于您没有为 this 元素执行此操作,但对于 Label 它不会起作用。

由于您想要处理 Label 上的点击元素,您需要将处理程序添加到 fileName,这将起作用