Мне нужно установить расположение компонента в окне.
Мне нужно нарисовать компонент на GlassPane
рядом с другим компонентом, по которому щелкнули. Я передаю компонент, который вызывает событие click, некоторому менеджеру, и там я хочу получить координаты, где рисовать.
public void mouseClicked(MouseEvent e) {
ApplicationManager.getInstance().drawOnGlassPane((Component e.getSource());
}
public void drawOnGlassPane(final Component caller) {
mainFrame = (JFrame) SwingUtilities.getWindowAncestor(caller);
JPanel glassPane = (JPanel) mainFrame.getGlassPane();
glassPane.setVisible(true);
Point where = caller.getLocationOnScreen();
JButton btn = new JButton("on glass pane");
btn.setBounds((int) where.getX(), (int) (where.getY() + caller.getHeight()), 50, 20);
glassPane.add(btn);
}
}
Новый компонент появляется не в том месте. Как я могу установить правильное местоположение?