如何将GWT对话框定位到浏览器的右下角?

时间:2013-10-04 07:55:28

标签: css gwt uibinder

    int browserHeight=Window.getClientHeight();
    int browserWidth=Window.getClientWidth();
    dialog.setPopupPosition(browserWidth-dialog.getElement().getClientWidth(), browserHeight-dialog.getElement().getClientHeight());

    dialog.show();

上面的代码将使位置从浏览器的最后一个像素开始(即底部= 0),这不是我所期望的。我不喜欢css cos浏览器不兼容的问题。 在我的网站上还有一个页脚(高度= 50px),如果你可以让对话框不像下面的图片那样放在页脚上 enter image description here

那么,如何将GWT对话框定位到浏览器的右下角?

2 个答案:

答案 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);

但如何动态了解对话框的宽度+高度是另一个问题