일부 메시지를 표시하기 위해 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
'GWT.runAsync'를 사용하면 별도의 스크립트로 컴파일된다는 것을 의미합니다.이 스크립트는 원하는 스크립트가 아닐 수도 있습니다. 'DeferredCommand' 또는 GWT 2.1의'Scheduler.get() ... '을 사용하는 것이 더 나을 것입니다. 또는 zOObs가 제안하는대로 프리 페치를 사용하십시오. –
성능상의 이유로 GWT.runAsync를 사용하려고합니다. 기본적으로 많은 작은 이미지 (ClientBundle을 통해로드 됨)가있는 페이지가 있으며 일부 사용자 만이 확대 된 이미지를보기 위해 이곳 저곳을 클릭 할 것으로 예상됩니다. 나는 이미지의 너비/높이가 알려지기 전에 center() 메서드가 호출 된 긴 디버깅 시간을 통해 깨달았다. 그것이 우리가 onLoad 센터가 필요한 이유입니다. 이미지가 현금화 될 수 있기 때문에 onLoad 메서드 외부에 두 번째 센터가 필요합니다. – raisercostin