Browse Source

Pull request #1856: REPORT-35699 国际化修改对报表下拉框产生影响

Merge in DESIGN/design from ~HENRY.WANG/design:final/10.0 to final/10.0

* commit '57c22fe43b56ae478d357c29417b79b51303b0f8':
  REPORT-35699 国际化修改对报表下拉框产生影响 添加import
  REPORT-35699 国际化修改对报表下拉框产生影响
final/10.0
Kara 5 years ago
parent
commit
b57e3e7db4
  1. 15
      designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java

15
designer-base/src/main/java/com/fr/design/utils/gui/GUICoreUtils.java

@ -27,6 +27,7 @@ import com.fr.design.gui.itextfield.UITextField;
import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.DesignerContext;
import com.fr.design.style.color.ColorCell;
import com.fr.design.style.color.ColorFactory;
import com.fr.design.style.color.ColorSelectBox;
@ -397,12 +398,16 @@ public final class GUICoreUtils {
Dimension size = popup.getPreferredSize();
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
screen.setSize(screen.getSize().width, screen.height - HEIGHT_GAP);
int showOnScreenX = Math.min(screen.width, parentComponent.getLocationOnScreen().x + parentComponent.getWidth());
//父元素右边界的坐标
int parentComponentRightBorderPosition = parentComponent.getLocationOnScreen().x + parentComponent.getWidth();
//设计器右边界的坐标
Rectangle rectangle = DesignerContext.getDesignerFrame().getBounds();
int designerRightBorderPosition = rectangle.x + rectangle.width;
rectangle = SwingUtilities.getWindowAncestor(parentComponent).getBounds();
designerRightBorderPosition = Math.max(designerRightBorderPosition, rectangle.x + rectangle.width);
// peter:调整X的高度.
if (point.x + size.width > showOnScreenX && size.width < showOnScreenX) {
x += (showOnScreenX - point.x - size.width);
if (point.x + size.width > designerRightBorderPosition && size.width < designerRightBorderPosition) {
x += (parentComponentRightBorderPosition - point.x - size.width);
}
// peter:调整y高度.

Loading…
Cancel
Save