如何定位smartGWT对话框

时间:2013-01-24 10:16:16

标签: smartgwt

我现在正试着在smartGWT中移动我的对话几个小时,但没有运气。

这是我的代码:

            Dialog dlg = new Dialog();

            ListGridRecord[] h = scoringGrid.getRecords();
            HLayout chart = new HLayout();
            vlayout.addMember(chart);

            dlg.addMember(highChart(h));
            dlg.moveBy(500, 900);
            dlg.setHeight("400px");
            dlg.setWidth("700px");
            dlg.show();

我也尝试过:setLeft, setTop, setRect,没有任何影响 我的对话框始终显示在同一位置。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

Dialog是Window的一个子类。因此,您可以调用继承的方法setRect。

来自Javadoc:

public void setRect(int left, int top, int width,  int height)

//一次设置相对于封闭上下文的所有四个坐标。

如果你没有看到改变,也许在某些情况下你需要重绘我发现它是必要的。

答案 1 :(得分:0)

我有同样的问题。我终于尝试在 show()之后调用moveTo(),并且它有效。

dlg.show();
dlg.moveTo(400, 500);

moveBy()也以这种方式工作。

我不确定为什么这样做 - 我猜show()会自动将Dialog居中并覆盖之前的位置。但是,我没有得到与Window一样的行为,我没有在Dialog中看到任何覆盖show()行为的内容。但是,它对我有用......