사용자가 클릭 할 때 GWT PopupPanel을 사용하여 버튼 위에 팝업을 표시하고 있습니다.GWT PopupPanel 잘못된 팝업 위치
나는 팝업의 위치를 설정하고 그래서처럼 보여입니다 : 그것은 표시 후 나는 팝업의 최고 값을 검사 할 때
panel.setPopupPosition(leftPos, topPos);
panel.show();
그러나, 나는 그것이 내가 할당 된 것보다 위치 약간 낮은 것을 알 수있다.
문제는 setPopupPosition가 전달되는 값으로 변경하는 것이 될 수있다 :
// Account for the difference between absolute position and the
// body's positioning context.
left -= Document.get().getBodyOffsetLeft();
top -= Document.get().getBodyOffsetTop();
가 어떻게이 GWT PopupPanel의 위치가 내가 준 정확하게 값이 있는지 확인 할 수 있습니다? setPopupPosition()
은 실제로 위치를 설정하는 유일한 방법 인 것처럼 보이지만 전달하는 위치에 대한 일부 조작 (사용 사례에서는 불필요)을 수행합니다.
당신은 팝업의 DOM 요소의 스타일에 직접 액세스 할 수 있습니다 - 예를 PopupPanel.getElement(). getStyle(). setPropertyPx ("top", topPos); –
Ahh, 나는 그것을 시도했지만, 작동하지 않았다. (팝업은 0,0으로 나타났다.) 키는'show()'를 호출 한 후에 그 속성을 설정하는 것이다. 이것은'show()'를 호출 한 후 위치를 설정할 때 팝업이 "점프"하는 것을 보지 못하기 때문에 작동하지만, 사용하지 않고'show()'를 호출하기 전에 위치를 설정하는 방법이 있는지 궁금합니다. 'setPopupPosition()'? 자유롭게 의견을 말하십시오 ('show()'를 부르신 후 반드시해야 함) 받아 들일 것입니다. – OMGitzMidgar
답변을 추가했습니다. –