TSW*_*985 3 java swing point jbutton autocompletetextview
也许这是一个愚蠢的问题,但我失去了几个小时的尝试.我有任何内部组件的JFrame.这个JFrame可以有任何布局.我的问题很简单我有这个窗口:在图像中我使用绝对布局来了解真实位置.

我想知道按钮的位置.我正在使用GridBagLayout,当我执行button.getY()或button.getX()时,我有0个,在X或Y.但如果我使用绝对布局,我没有问题.
如果我使用absoluteLayout,我知道我没有这个问题.但我想使用任何布局并知道框架中任何组件的绝对位置.
我真的想做一个自动完成的textField(比如google,当你写入搜索时),当我在TextField中写字时,我想在文本字段下方显示其他窗口jframe的巧合.
如果我知道任何文本的绝对位置,我可以计算位置并显示新窗口.
谢谢大家.
其中一种SwingUtilities.convertPoint()方法应该做你想要的.以下示例打印java.awt.Point[x=54,y=22].

JFrame f = new JFrame("Test");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(new JLabel("Test"), BorderLayout.WEST);
JButton b = new JButton("Test");
f.add(b);
f.pack();
f.setLocationRelativeTo(null);
f.setVisible(true);
System.out.println(SwingUtilities.convertPoint(b, b.getX(), b.getY(), f));
Run Code Online (Sandbox Code Playgroud)