Как я могу получить JPopupMenu для "теневого" компонента последовательно
У меня есть пользовательский автозаполнение JTextField. Я использую JPopupMenu, чтобы содержать выбор. Я хочу вставить JPopupMenu прямо под JTextField, используя этот метод.
Rectangle r = textField.getBounds();
popup.show(textField, (int)(r.getX()), (int)(r.getY() + textField.getHeight));
popup.setVisible(true);
Это работает, когда я помещаю компонент в простой JFrame. Но когда я помещаю компонент в сложный макет с JScrollPane. Местоположение становится случайным и непоследовательным. Я бы хотел, чтобы popupMenu "затенял" textField в любых условиях. Как мне этого добиться? Благодарю.
1 ответ
Решение
Расположение всплывающего окна относительно родительского компонента.
popup.show(textField, 0, textField.getHeight());
следует поместить его прямо под textField
,