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

时间:2015-09-22 07:26:03

标签: java 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());

}

1 个答案:

答案 0 :(得分:2)

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

由于您要处理Label上的点击元素,您需要将处理程序添加到fileName,这将有效