Как получить позицию JFrame на экране, чтобы вставить JDialog? - PullRequest
0 голосов

Мне было интересно, возможно ли получить положение местоположения на экране JFrame, чтобы поместить то же место в JDialog.Я имею в виду, что я хочу сделать, когда я открываю JDialog от кнопки JFrame, я хочу поместить JDialog в ту же позицию, что и основной JFrame, может быть, с помощью метода .setLocationRelativeto (), есть идеи, как это сделать ??, спасибо!.

   this.setUndecorated(true);
   initComponents();
   this.setBounds(WIDTH, WIDTH, 444, 308);
   JDialog dialog=new JDialog();

Я хочу занять ту же позицию у основного JFrame, но я не знаю, как это сделать ....

   dialog.setLocationRelativeTo();  

1 Ответ

0 голосов
/ 25 мая 2018

возможно ли получить положение местоположения на экране JFrame

Код в ActionListener будет выглядеть примерно так:

Component c = event.getComponent();
Window window = SwingUtilities.windowForComponent(c);
JDialog dialog = new JDialog(...);
...
dialog.pack();
dialog.setLocation( window.getLocation() );
dialog.setVisible( rue ;

или вы можете центрировать диалог по рамке, используя:

dialog.setLocationRelativeTo( window );
dialog.setVisible( true );
...