diff --git a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnRowSizingAction.java b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnRowSizingAction.java index f7e86d2c0..0903323b8 100644 --- a/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnRowSizingAction.java +++ b/designer-realize/src/main/java/com/fr/design/actions/columnrow/ColumnRowSizingAction.java @@ -13,6 +13,7 @@ import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.mainframe.ElementCasePane; import com.fr.design.fun.ReportLengthUNITProvider; import com.fr.design.unit.UnitConvertUtil; +import com.fr.general.ComparatorUtils; import com.fr.grid.selection.CellSelection; import com.fr.report.elementcase.ElementCase; import com.fr.stable.ArrayUtils; @@ -39,8 +40,8 @@ public abstract class ColumnRowSizingAction extends AbstractColumnRowIndexAction return ColumnRowSizingAction.this.title4UnitInputPane(); } }; - UNIT len = getShowLen(report, cs); - populateNumberDialog(uPane, len); + final UNIT oldLen = getShowLen(report, cs); + populateNumberDialog(uPane, oldLen); final CellSelection finalCS = cs; uPane.showSmallWindow(DesignerContext.getDesignerFrame(), new DialogActionAdapter() { @@ -51,8 +52,10 @@ public abstract class ColumnRowSizingAction extends AbstractColumnRowIndexAction float newHeight = (float) uPane.update(); int unitType = DesignerEnvManager.getEnvManager().getReportLengthUnit(); ReportLengthUNITProvider lengthUNIT = UnitConvertUtil.parseLengthUNIT(unitType); - UNIT len = lengthUNIT.float2UNIT(newHeight); - updateAction(report, len, finalCS); + UNIT newLen = lengthUNIT.float2UNIT(newHeight); + if (!ComparatorUtils.equals(oldLen, newLen)) { + updateAction(report, newLen, finalCS); + } } catch (ValueNotChangeException e) { // nothing }