我使用gwt彈出來顯示一些消息,但如果我調用popup.center(),它不會顯示在顯示事件的 中心 中。其實它不是第一次居中 ,如果我關閉它並再次打開它,每一件事情都可以, 但不是第一次。如何解決這個問題?gwt彈出不居中
GWT.runAsync(new RunAsyncCallback() {
@Override
public void onSuccess() {
Image fullImage = new Image(optionImageName);
fullImage.setAltText("Loading image ...");
imagePopup.setWidget(fullImage);
imagePopup.center();
}
});
我在http://www.devcomments.com/gwt-Popup-is-not-centered-at107182.htm上發現了這個問題,今天我也遇到了這個問題。我找到了答案,我會在這裏發佈以供將來參考。
曾嘗試預取圖像('Image.prefetch(String)')? – z00bs 2010-12-20 08:11:28
使用'GWT.runAsync'將意味着它將被編譯成一個單獨的腳本,這可能不是你想要的。最好使用'DeferredCommand'或GWT 2.1的'Scheduler.get()...'。或者按照zOObs的建議使用預取。 – 2010-12-20 10:11:45
出於性能方面的原因,使用GWT.runAsync。基本上我有一個頁面上有許多小圖片(通過ClientBundle加載),我希望只有一些用戶點擊這裏和那裏看到一個縮放圖像。我通過很長的調試時間實現了center()方法被調用,然後才知道圖像的寬度/高度。這就是爲什麼我們需要一個onLoad中心。我們需要onLoad方法之外的第二個中心,因爲圖像也可能是兌現的。 – raisercostin 2011-01-03 20:18:40