簡體   English   中英

如何刪除已添加到Label的clickHandler?

[英]How to remove clickHandler which already added to Label?

我正在使用GWT / JAVA進行開發。 我有以下問題:我想從已添加到Label的Label中刪除ClickHandler。

我嘗試了removeClickListener(),但它已被棄用,所以我找不到另一個解決方案來執行此操作。

如果有人找到解決方案,請告訴我..

我不知道GWT,但這是你可以做的(來自API)。

HandlerRegistration reg = label.addClickHandler(clickHandler);

reg.removeHandler();

你使用的是錯誤的方法。 正確的是。

com.google.gwt.user.client.ui.Label.addClickHandler(ClickHandler)

在此方法調用上,返回了一個HandlerRegistration實例。 有一種方法

com.google.gwt.event.shared.HandlerRegistration.removeHandler()

addClickHandler(new ...) (和其他所有“ add ... Handler( ”)返回一個HandlerRegistration接口。

你必須注冊這個處理程序。 因此,您可以隨時刪除clickHandler。

    HandlerRegistration handler = null;

    private void updateMyInformationLabel(){
         if(handler != null){ 
              // previous onClickHandler removed
              handler.removeHandler(); 
         }
         // adding a new action on label click 
         handler = myInformationLabel.addClickHandler(new ClickHandler() {
                       @Override
                       public void onClick(ClickEvent event) {
                           // something done once
                       }
                   });        
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM