int browserHeight=Window.getClientHeight();
int browserWidth=Window.getClientWidth();
dialog.setPopupPosition(browserWidth-dialog.getElement().getClientWidth(), browserHeight-dialog.getElement().getClientHeight());
dialog.show();
上面的代码将使位置从浏览器的最后一个像素开始(即底部= 0),这不是我所期望的。我不喜欢css cos浏览器不兼容的问题。 在我的网站上还有一个页脚(高度= 50px),如果你可以让对话框不像下面的图片那样放在页脚上
那么,如何将GWT对话框定位到浏览器的右下角?
答案 0 :(得分:3)
这是正确的方法
dialogBox.setPopupPositionAndShow(new PositionCallback(){
@Override
public void setPosition(int offsetWidth, int offsetHeight) {
// TODO Auto-generated method stub
dialogBox.setPopupPosition(parentDockLayoutPanel().getOffsetWidth()- dialogBox.getOffsetWidth(),
parentDockLayoutPanel().getOffsetHeight() - dialogBox.getOffsetHeight()-50);
}
});
答案 1 :(得分:1)
如果我们知道确切的宽度和宽度,那将很简单。对话框的高度。我们还需要知道对话框的parentPanel / parentLayoutPanel
此代码可以使用,但它不是最佳代码
dialogBox.setWidth("300px");
dialogBox.setHeight("300px");
dialogBox.setPopupPosition(parentLayoutPanel.getOffsetWidth()-300,parentLayoutPanel.getOffsetHeight()-300-50);
但如何动态了解对话框的宽度+高度是另一个问题