Gwt 如何在每次调用后刷新GXT的组合框

Gwt 如何在每次调用后刷新GXT的组合框,gwt,combobox,gxt,Gwt,Combobox,Gxt,我有一个组合框。当我单击一个链接时,它会打开一个弹出窗口,其中包含一个组合框,其中包含从数据库加载的数据。它总是保留第一次调用的数据,而不刷新 我怎样才能刷新这个 垂直面板vp=新垂直面板; 副总裁:10; ListStore状态=新的ListStore; states.addgetStates; ComboBox combo=新的ComboBox; combo.setEmptyText选择一个状态。。。; combo.setDisplayFieldname; combo.setWidth150

我有一个组合框。当我单击一个链接时,它会打开一个弹出窗口,其中包含一个组合框,其中包含从数据库加载的数据。它总是保留第一次调用的数据,而不刷新

我怎样才能刷新这个

垂直面板vp=新垂直面板; 副总裁:10; ListStore状态=新的ListStore; states.addgetStates; ComboBox combo=新的ComboBox; combo.setEmptyText选择一个状态。。。; combo.setDisplayFieldname; combo.setWidth150; combo.setStorestates; combo.setTypeAheadtrue; combo.setTriggerActionTriggerAction.ALL; vp.addcombo;
假设您正在使用GXT,因此正在使用GXT窗口类,您可以执行以下操作:

myWindow.addBeforeShowHandler(new BeforeShowEvent.BeforeShowHandler() {
    @Override
    public void onBeforeShow(BeforeShowEvent event) {
        mxComoBox.clear();
    }
});
您将看到旧值,因为弹出窗口将被重用。因此,当弹出窗口可见时,必须清除组合的值

此代码应适用于GXT 3.1.2。GXT的旧版本可能有不同的编码


希望有帮助。

打开弹出窗口时是否重新创建组合框?Is states.addgetStates;使用数据库中的值更新组合框的位置?何时更新支持组合框的列表存储?您应该发布更多代码以显示更多上下文。此时,我打赌应该是states.replaceAllGetState;。