From b2bf9dd2c431717a46614f6762161baa1574d2c6 Mon Sep 17 00:00:00 2001 From: Starryi Date: Tue, 27 Jul 2021 14:56:50 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-55850=20=E3=80=90=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E8=83=8C=E6=99=AF=E5=88=86=E7=A6=BB=E3=80=91=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E5=A4=8D=E7=94=A8-Tab=E7=BB=84=E4=BB=B6=E8=83=8C=E6=99=AF?= =?UTF-8?q?=E5=92=8C=E8=BE=B9=E6=A1=86=E9=A2=84=E8=A7=88=E4=B8=8D=E7=94=9F?= =?UTF-8?q?=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 【问题原因】 1. Tab组件样式属性更新后,没有调用initStyl设置XCreator的样式重新渲染 2. Tab不支持圆角 3. Tab样式设置面板因为没有初始化标题相关配置项,导致update时,type变为默认值STANDARD,影响了 XWCardLayout.initStyle内部逻辑 【改动思路】 同上 --- .../cardlayout/XWCardMainBorderLayout.java | 5 ++++- .../design/gui/xpane/CardTagLayoutStylePane.java | 15 ++++++--------- .../com/fr/design/gui/xpane/LayoutStylePane.java | 6 +++--- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java index 6009711f7..2f7200acf 100644 --- a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java +++ b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XWCardMainBorderLayout.java @@ -415,7 +415,10 @@ public class XWCardMainBorderLayout extends XWBorderLayout { */ @Override public void firePropertyChange(){ - return; + XWCardLayout cardLayout = this.getCardPart(); + if (cardLayout != null && cardLayout.toData() != null) { + cardLayout.initStyle(); + } } diff --git a/designer-form/src/main/java/com/fr/design/gui/xpane/CardTagLayoutStylePane.java b/designer-form/src/main/java/com/fr/design/gui/xpane/CardTagLayoutStylePane.java index 5e6f7c06c..37db55102 100644 --- a/designer-form/src/main/java/com/fr/design/gui/xpane/CardTagLayoutStylePane.java +++ b/designer-form/src/main/java/com/fr/design/gui/xpane/CardTagLayoutStylePane.java @@ -3,9 +3,7 @@ */ package com.fr.design.gui.xpane; -import com.fr.form.ui.LayoutBorderStyle; - -import javax.swing.*; +import javax.swing.JPanel; /** * CardTagLayoutBorderPane Pane. @@ -14,14 +12,13 @@ public class CardTagLayoutStylePane extends LayoutStylePane { @Override protected JPanel createTitleStylePane(){ - return null; + JPanel panel = super.createTitleStylePane(); + panel.setVisible(false); + return panel; } @Override - public void updateTitle(LayoutBorderStyle style) { - + protected JPanel createBackgroundStylePane(boolean supportCornerRadius) { + return super.createBackgroundStylePane(false); } - - @Override - protected void populateTitle() { } } diff --git a/designer-form/src/main/java/com/fr/design/gui/xpane/LayoutStylePane.java b/designer-form/src/main/java/com/fr/design/gui/xpane/LayoutStylePane.java index 95659df6b..453bd5e0d 100644 --- a/designer-form/src/main/java/com/fr/design/gui/xpane/LayoutStylePane.java +++ b/designer-form/src/main/java/com/fr/design/gui/xpane/LayoutStylePane.java @@ -110,7 +110,7 @@ public class LayoutStylePane extends BasicBeanPane { JPanel titlePane = createTitleStylePane(); JPanel bodyContentPane = currentIsRootLayout ? createBodyContentPane4RootLayout() : createBodyContentPane(); - JPanel backgroundPane = createBackgroundStylePane(); + JPanel backgroundPane = createBackgroundStylePane(true); if (titlePane != null) { container.add(titlePane, BorderLayout.NORTH); @@ -135,14 +135,14 @@ public class LayoutStylePane extends BasicBeanPane { this.add(container, BorderLayout.CENTER); } - protected JPanel createBackgroundStylePane() { + protected JPanel createBackgroundStylePane(boolean supportCornerRadius) { borderStyleCombo = new UIComboBox(BORDER_STYLE); borderLineAndImagePane = new BorderLineAndImagePane(this.supportBorderImage); cornerSpinner = new UISpinner(0,1000,1,0); double p = TableLayout.PREFERRED; double f = TableLayout.FILL; - double[] rowSize = {p, p, p, p}; + double[] rowSize = supportCornerRadius ? new double[] {p, p, p, p} : new double[]{p, p, p}; double[] columnSize = {SETTING_LABEL_WIDTH, f}; UILabel uiLabel = new UILabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Form_Widget-Style_Background_Style"));