Ale*_*lex 4 java user-interface swing position jframe
我正在尝试实现扩展功能,如下例所示,但是我使用的JFrame包含更复杂的GUI元素,而不是菜单.
我遇到的问题是,如果我移动包含框架应该出现的按钮的父窗口,我无法调整我的自定义JFrame每次相对于该按钮的位置打开
最初我只是用过
myCustomFrame.setLocation(myButton.getX(), (myButton.getY() + 73));
Run Code Online (Sandbox Code Playgroud)
但是如果我改变移动父窗口,这显然不起作用
之后我尝试了
myCustomFrame.setLocationRelativeTo(myButton);
Run Code Online (Sandbox Code Playgroud)
但在这种情况下,它出现在按钮的顶部...我调整特定情况的位置,但这不是一个解决方案.
所以我试图获得与菜单相同的行为,以便自动调整JFrame的位置.
有没有人有什么建议?
你考虑过用过myButton.getLocationOnScreen()
吗?这样,无论你在哪里移动包含按钮的jFrame,你都会从屏幕的左上角开始测量你的按钮点.
您可以改变原始方法,如下所示:
myCustomFrame.setLocation(myButton.getLocationOnScreen().x, (myButton.getLocationOnScreen().y + 73));
Run Code Online (Sandbox Code Playgroud)