2013-09-30 60 views
1

我想在我的DialogBox隱藏時調用方法。不管它是如何隱藏的,它可以是有人點擊關閉按鈕,或者它可以被隱藏。當這種情況發生時,系統會調用一種方法。如何在DialogBox隱藏在GWT中時觸發事件?

看看這段代碼。

public class WishListDialogBox extends DialogBox { 
    @UiField Button closeButton; 
    public WishListDialogBox() { 
     setHTML("Wish List"); 
     setWidget(uiBinder.createAndBindUi(this)); 
     closeButton.addClickHandler(new ClickHandler(){ 

      @Override 
      public void onClick(ClickEvent event) { 

       hide(); 
      } 

     }); 
    } 

    @Override 
    public void hide() { 
     super.hide(); 
     //call some action here; 
    } 
} 

上面的代碼只有當我點擊CloseButton工作,但是當DialogBox被隱藏自身,什麼都沒有發生。

DialogBox中沒有onHide事件。

在傳統的Java中,有addWindowListener來處理他非常容易,但GWT DialogBox中缺少。

那麼,如何在GWT中隱藏DialogBox時觸發事件?

回答

5

最後我找到了解決方案

this.addCloseHandler(new CloseHandler(){ 
    @Override 
    public void onClose(CloseEvent event) { 
     // TODO Auto-generated method stub 
     //do some action here 
    } 
}); 
相關問題