From 6dc4651462bedc9e93f4a35681250aaa45641538 Mon Sep 17 00:00:00 2001 From: Yvan Date: Mon, 17 Aug 2020 16:29:02 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-37020=20=E5=8F=82=E6=95=B0=E9=9D=A2?= =?UTF-8?q?=E6=9D=BF=EF=BC=8C=E4=B8=80=E4=B8=AA=E4=B8=80=E4=B8=AA=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=8F=82=E6=95=B0=EF=BC=8C=E9=9D=A2=E6=9D=BF=E9=95=BF?= =?UTF-8?q?=E5=BA=A6=E4=B8=8D=E4=BC=9A=E8=87=AA=E9=80=82=E5=BA=94=EF=BC=8C?= =?UTF-8?q?=E6=92=A4=E9=94=80=E5=B0=B1=E4=BC=9A=E8=87=AA=E9=80=82=E5=BA=94?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E4=BA=86=201.=20=E4=B8=BA=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=8D=95=E4=B8=AA=E5=8F=82=E6=95=B0=E7=BB=84=E4=BB=B6=E5=92=8C?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8D=95=E4=B8=AA=E5=8F=82=E6=95=B0=E7=BB=84?= =?UTF-8?q?=E4=BB=B6+=E6=B7=BB=E5=8A=A0=E6=9F=A5=E8=AF=A2=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E7=9A=84=E6=96=B9=E6=B3=95=E9=83=BD=E5=8A=A0=E4=B8=8A?= =?UTF-8?q?=E4=BA=86=E8=AE=BE=E7=BD=AE=E4=B8=AD=E5=BF=83Panel=E9=AB=98?= =?UTF-8?q?=E5=BA=A6=E7=9A=84=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fr/design/report/ReportColumnsPane.java | 81 ++++++++----------- 1 file changed, 32 insertions(+), 49 deletions(-) diff --git a/designer-realize/src/main/java/com/fr/design/report/ReportColumnsPane.java b/designer-realize/src/main/java/com/fr/design/report/ReportColumnsPane.java index 108b61e65..4062e0dbe 100644 --- a/designer-realize/src/main/java/com/fr/design/report/ReportColumnsPane.java +++ b/designer-realize/src/main/java/com/fr/design/report/ReportColumnsPane.java @@ -14,11 +14,9 @@ import com.fr.design.gui.itextfield.UITextField; import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.general.FRFont; -import com.fr.general.GeneralContext; import com.fr.general.IOUtils; import com.fr.report.stable.WorkSheetAttr; import com.fr.report.worksheet.WorkSheet; -import com.fr.stable.ArrayUtils; import com.fr.stable.ColumnRow; import com.fr.stable.Constants; import com.fr.stable.StringUtils; @@ -39,12 +37,10 @@ import java.awt.Graphics; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.List; public class ReportColumnsPane extends BasicPane{ public static final int ROW = 0; public static final int COLUMN = 1; - private static final List LOCALE_LANGUAGE = ArrayUtils.toList(new String[]{"en"}); private int rowOrColumn; private boolean isRepeate; @@ -62,7 +58,7 @@ public class ReportColumnsPane extends BasicPane{ com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Columns_Repeat_Row"), com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Columns_Repeat_Column") }; - + private static final String FONT_NAME = "simsun"; private static final int FONT_SIZE = 14; @@ -91,7 +87,6 @@ public class ReportColumnsPane extends BasicPane{ this.setLayout(FRGUIPaneFactory.createBorderLayout()); JPanel north = new JPanel(new BorderLayout()) { - @Override public void paint(Graphics g) { super.paint(g); super.paintBorder(g); @@ -127,7 +122,7 @@ public class ReportColumnsPane extends BasicPane{ this.add(north, BorderLayout.NORTH); this.add(createRowColumnPane(), BorderLayout.CENTER); } - + private ActionListener onOffListener = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -225,7 +220,7 @@ public class ReportColumnsPane extends BasicPane{ sampleLablePane.add(cPane); return sampleLablePane; } - + private ActionListener rowChangeListener = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -238,7 +233,7 @@ public class ReportColumnsPane extends BasicPane{ } } }; - + private ActionListener colChangeListener = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -280,7 +275,7 @@ public class ReportColumnsPane extends BasicPane{ RowMaxOrSetPane.add(setRowRadioPane); return RowMaxOrSetPane; } - + private ActionListener toXBtnListener = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -293,7 +288,7 @@ public class ReportColumnsPane extends BasicPane{ } } }; - + private ActionListener maxBtnListener = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { @@ -315,39 +310,27 @@ public class ReportColumnsPane extends BasicPane{ UITitledBorder explainBorder = UITitledBorder.createBorderWithTitle(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Column_Area")); rowPane.setBorder(explainBorder); rowPane.setLayout(new FlowLayout(FlowLayout.LEFT, 5,13)); - // Yvan: REPORT-37398 判断设计器语言是否为英文 - if (LOCALE_LANGUAGE.contains(GeneralContext.getLocale().getLanguage())) { - // 如果是英文,需要为这个panel设置更大的height,否则显示不全 - rowPane.setPreferredSize(new Dimension(500,135)); - } else { - // 其它语言环境下也需要将height调高一点点,因为后面将组件分块了,如果不调整height会造成上下间距不等 - rowPane.setPreferredSize(new Dimension(500,90)); - } - // 将组件分成两块,分别装在各自的JPanel中,然后把两个JPanel添加到rowPane中,第二个JPanel放不下时会自动换行 - // 左边的JPanel:分栏数据 - JPanel multiData = new JPanel(); - multiData.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Column_Data") + ":")); + rowPane.setPreferredSize(new Dimension(500,80)); + rowPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Column_Data") + ":")); repeatColDataTextField = new UITextField(); repeatColDataTextField.setPreferredSize(new Dimension(107,24)); - multiData.add(repeatColDataTextField); - multiData.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Format") + ": A2:D5 ")); - // 右边的JPanel:复制行序列 - JPanel copyRowSequence = new JPanel(); + rowPane.add(repeatColDataTextField); + rowPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Format") + ": A2:D5 ")); copyLabel = new UILabel(REPORT_COLUMN_RAPEAT[rowOrColumn] + ":"); - copyRowSequence.add(copyLabel); + rowPane.add(copyLabel); + copyTitleTextField = new UITextField(); copyTitleTextField.setPreferredSize(new Dimension(107,24)); - copyRowSequence.add(copyTitleTextField); - copyRowSequence.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Format") + ": 1,2-3,5,18")); - // 添加JPanel - rowPane.add(multiData); - rowPane.add(copyRowSequence); + rowPane.add(copyTitleTextField); + rowPane.add(new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Report_Base_Format") + ": 1,2-3,5,18")); + + return rowPane; } /** * 从worksheetAttr中populate数据给界面 - * + * * @param attr 当前ElementCase的worksheet属性 * @param rowCount 总行数 * @param colCount 总列数 @@ -372,7 +355,7 @@ public class ReportColumnsPane extends BasicPane{ colOrRowConvert(); checkEnable(); } - + /** * populate列分栏数据 */ @@ -393,7 +376,7 @@ public class ReportColumnsPane extends BasicPane{ this.maxNumberSpinner.setEnabled(true); } } - + /** * populate行分栏 */ @@ -417,7 +400,7 @@ public class ReportColumnsPane extends BasicPane{ /** * 从worksheet中populate数据 - * + * * @param worksheet 当前worksheet */ public void populate(WorkSheet worksheet) { @@ -439,11 +422,11 @@ public class ReportColumnsPane extends BasicPane{ private void setValueText(WorkSheetAttr attr, int rowCount, int colCount, UITextField repeatColDataTextField, UITextField copyTitleTextField, UICheckBox showBlankCheckBox) { int startRow,endRow = -1,startColumn,endColumn = -1; - + if(attr.getStartIndex() == -1 && attr.getEndIndex() == -1){ return; } - + if (attr.getDirection() == ROW) { startRow = attr.getStartIndex(); endRow = attr.getEndIndex() == -1 ? rowCount - 1 : attr.getEndIndex(); @@ -455,13 +438,13 @@ public class ReportColumnsPane extends BasicPane{ startColumn = attr.getStartIndex(); endColumn = attr.getEndIndex() == -1 ? colCount - 1 : attr.getEndIndex(); } - + repeatColDataTextField.setText(ColumnRow.valueOf(startColumn, startRow).toString() +":" + ColumnRow.valueOf(endColumn, endRow).toString()); copyTitleTextField.setText(attr.getIndexsToCopy()); showBlankCheckBox.setSelected(attr.isShowBlank()); } - + /** * update行数据 */ @@ -480,7 +463,7 @@ public class ReportColumnsPane extends BasicPane{ } } } - + /** * update列数据 */ @@ -499,7 +482,7 @@ public class ReportColumnsPane extends BasicPane{ } } } - + /** * update数据给WorksheetAttr * @@ -508,8 +491,8 @@ public class ReportColumnsPane extends BasicPane{ if (!isRepeate) { attr.setDirection(Constants.NONE); return; - } - + } + switch (rowOrColumn) { case ROW: updateRow(attr); @@ -527,7 +510,7 @@ public class ReportColumnsPane extends BasicPane{ /** * update数据给worksheet - * + * * @param worksheet 当前worksheet */ public void update(WorkSheet worksheet) { @@ -544,7 +527,7 @@ public class ReportColumnsPane extends BasicPane{ /** * 从界面中赋值给WorkSheetAttr - * + * * @param attr 报表分栏属性 * @param repeatColDataTextField 从哪行开始复制 * @param copyTitleTextField 复制列序列 @@ -577,7 +560,7 @@ public class ReportColumnsPane extends BasicPane{ attr.setIndexsToCopy(copyTitleTextField.getText()); attr.setShowBlank(showBlankCheckBox.isSelected()); } - + /** * 判断输入是否合法 @@ -588,7 +571,7 @@ public class ReportColumnsPane extends BasicPane{ if(StringUtils.isEmpty(repeatText)){ return; } - + boolean valid = true; if(!repeatText.matches("[a-zA-Z]+[0-9]+[:][a-zA-Z]+[0-9]+")){ valid = false;