Layout Smartgwt addMember更改父级的顶部

Layout Smartgwt addMember更改父级的顶部,layout,location,smartgwt,Layout,Location,Smartgwt,我有几个嵌套布局(VLayouts和HLayouts),它们包含在选项卡窗格中。在其中一个布局(VLayout)中,根据选择窗口动态添加或删除多个元素。用户第一次进行选择时,窗格将向上移动几个像素(您将看不到窗格的上部)。剩下的时间里,痛苦总是留在错误的地方 总之,第一次添加会影响窗格顶部,其余的添加/删除操作不会影响窗格顶部 这只发生在Chrome上。不过,Firefox和IE都可以正常工作 我的添加代码是: int total = itemsPanel.getMembers().length

我有几个嵌套布局(VLayouts和HLayouts),它们包含在选项卡窗格中。在其中一个布局(VLayout)中,根据选择窗口动态添加或删除多个元素。用户第一次进行选择时,窗格将向上移动几个像素(您将看不到窗格的上部)。剩下的时间里,痛苦总是留在错误的地方

总之,第一次添加会影响窗格顶部,其余的添加/删除操作不会影响窗格顶部

这只发生在Chrome上。不过,Firefox和IE都可以正常工作

我的添加代码是:

int total = itemsPanel.getMembers().length - 1;
while (total >=0) {
    itemsPanel.removeMember(itemsPanel.getMember(total));
    total--;
}


Record[] records = selectorWindow.getSelectedRows();
if (records != null) {
    for (Record record : records) {
        String name = record.getAttribute("keyRecord");
        HLayout item = items.get(name);
        itemsPanel.addMember(row);
    }
}
if (itemsPanel != null) {
    int r = 80;
    if (Utils.isReducedHeight()) {
        r = 120;
    }

    int visibleHeight = getVisibleHeight() - StyleUtils.HEADER_HEIGHT - r;
    itemsPanel.setHeight(Math.max(1, Math.min(itemsPanel.getMembers().length * Utils.getRowHeight(), visibleHeight)));
    int h = Math.min(itemsPanel.getHeight() + 10, visibleHeight);
    containerItemsPanel.setHeight(h);
}
我正在使用GWT2.5.1和SmartGWT3.0。有什么想法吗


提前感谢

每当您遇到与设计相关的问题时,最好附加描述相同问题的快照,以便于理解。次要细节,但没有GWT 2.5.1。也许你指的是2.5.0 RC1。此外,您的代码片段还有许多方法,这些方法的副作用没有显示给我们。这些可能是你遇到问题的原因。尝试提供一个我们可以测试的独立示例,这样我们可以帮助您找到解决方案。您好,谢谢您的回答。我在eclipse中安装的版本是GoogleSuit插件2.5.1.v201120043-rel-r37。我怀疑它与gwt 2.5.1相同,抱歉。