diff --git a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataComboBox.java b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataComboBox.java index ec2a6690e1..136181bcd8 100644 --- a/designer-base/src/main/java/com/fr/design/data/datapane/TableDataComboBox.java +++ b/designer-base/src/main/java/com/fr/design/data/datapane/TableDataComboBox.java @@ -1,6 +1,7 @@ package com.fr.design.data.datapane; import com.fr.design.constants.UIConstants; +import com.fr.design.ui.util.UIUtil; import java.awt.Component; import java.awt.Dimension; import java.awt.event.ItemEvent; @@ -73,7 +74,7 @@ public class TableDataComboBox extends UIComboBox implements Prepare4DataSourceC public TableDataComboBox() { super(); setListCellRenderer(); - addListener(); + addComboBoxListener(); } /** @@ -109,14 +110,14 @@ public class TableDataComboBox extends UIComboBox implements Prepare4DataSourceC } /** - * 在comboBox可见时添加下拉事件与数据集响应事件 + * 在comboBox可见时添加数据集响应事件与refresh操作 */ - private void addListener() { + private void addComboBoxListener() { this.addAncestorListener(new AncestorListener() { @Override public void ancestorAdded(AncestorEvent event) { registerDSChangeListener(); - refresh(DesignTableDataManager.getEditingTableDataSource()); + UIUtil.invokeLaterIfNeeded(() -> refresh(DesignTableDataManager.getEditingTableDataSource())); } @Override