From 50c17ef44992f8c4702a386926ff38fe7b567424 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Levy=2EXie-=E8=A7=A3=E5=AE=89=E6=A3=AE?= Date: Wed, 25 Dec 2024 14:49:07 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-145122=20feat:=E6=A0=91=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E9=80=89=E4=B8=AD=E7=8A=B6=E6=80=81=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../itree/refreshabletree/RefreshableJTree.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/RefreshableJTree.java b/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/RefreshableJTree.java index 1a86525d28..af036f3a4b 100644 --- a/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/RefreshableJTree.java +++ b/designer-base/src/main/java/com/fr/design/gui/itree/refreshabletree/RefreshableJTree.java @@ -316,4 +316,19 @@ public abstract class RefreshableJTree extends CheckBoxTree { tip.setOpaque(false); return tip; } + + @Override + public TreePath getPathForLocation(int x, int y) { + // NewUI树组件全选行,仅考虑y坐标即可 + TreePath closestPath = getClosestPathForLocation(x, y); + + if(closestPath != null) { + Rectangle pathBounds = getPathBounds(closestPath); + + if(pathBounds != null && + y >= pathBounds.y && y < (pathBounds.y + pathBounds.height)) + return closestPath; + } + return null; + } }