From 89dd8f64626b85cb637cfc7a91f6b5a2eb5068e5 Mon Sep 17 00:00:00 2001 From: kerry Date: Mon, 17 Aug 2020 14:17:13 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-37588=E3=80=90frm=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E6=94=AF=E6=8C=81=E7=BC=A9=E6=94=BE=E3=80=91?= =?UTF-8?q?=E5=A4=9Atab=E6=A8=A1=E7=89=88=EF=BC=8C=E5=8F=B3=E5=87=BBtab?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E6=8F=90=E7=A4=BA=EF=BC=8C=E4=BD=8D=E7=BD=AE?= =?UTF-8?q?=E4=B8=8D=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../designer/creator/cardlayout/XCardSwitchButton.java | 5 +++-- .../com/fr/design/mainframe/EditingMouseListener.java | 2 +- .../main/java/com/fr/design/mainframe/FormDesigner.java | 8 ++++++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XCardSwitchButton.java b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XCardSwitchButton.java index f0e23b977..bce26eb3f 100644 --- a/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XCardSwitchButton.java +++ b/designer-form/src/main/java/com/fr/design/designer/creator/cardlayout/XCardSwitchButton.java @@ -202,7 +202,8 @@ public class XCardSwitchButton extends XButton { jPopupMenu.add(prev); jPopupMenu.add(next); jPopupMenu.add(end); - GUICoreUtils.showPopupMenu(jPopupMenu, editingMouseListener.getDesigner(), e.getX(), e.getY()); + FormDesigner designer = editingMouseListener.getDesigner(); + GUICoreUtils.showPopupMenu(jPopupMenu, editingMouseListener.getDesigner(), designer.getOriginX(e.getX()), designer.getOriginY(e.getY())); } @Override @@ -251,7 +252,7 @@ public class XCardSwitchButton extends XButton { //是否进入点击关闭按钮区域 private boolean isSelectedClose(MouseEvent e, FormDesigner designer){ - int diff = designer.getArea().getHorScrollBar().getValue(); + int diff = designer.getHorizontalScaleValue(); // mouse position int ex = e.getX() + diff; diff --git a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java index d8234c2b1..3754e5109 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java @@ -607,7 +607,7 @@ public class EditingMouseListener extends MouseInputAdapter { if (e.getButton() == MouseEvent.BUTTON3) { UIPopupMenu cellPopupMenu = creator.createPopupMenu(designer); if (cellPopupMenu != UIPopupMenu.EMPTY) { - GUICoreUtils.showPopupMenu(cellPopupMenu, designer, e.getX(), e.getY()); + GUICoreUtils.showPopupMenu(cellPopupMenu, designer, oldX, oldY); } } creator.doLayout(); diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java b/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java index f9141ca99..e5ce0f726 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/FormDesigner.java @@ -1611,6 +1611,14 @@ public class FormDesigner extends TargetComponent
implements TreeSelection return (int) ((y - this.getPaintY()) / this.getScale()); } + public int getOriginX(int x) { + return (int) (x * this.getScale() + this.getPaintX()); + } + + public int getOriginY(int y) { + return (int) (y * this.getScale() + this.getPaintY()); + } + public int getHorizontalScaleValue() { return (int) (this.getArea().getHorizontalValue() / this.scale);