我想知道是否可以在JFrame的屏幕上获取位置的位置,以将相同的位置放在JDialog中。我的意思是,我想要做的是当我从JFrame按钮打开一个JDialog时,我想把JDialog放在与主JFrame相同的位置,也许用.setLocationRelativeto()方法,任何想法都可以做到? ,谢谢!。
this.setUndecorated(true);
initComponents();
this.setBounds(WIDTH, WIDTH, 444, 308);
JDialog dialog=new JDialog();
我想从mainJFrame中采用相同的位置,但我不知道该怎么做....
dialog.setLocationRelativeTo();
答案 0 :(得分:1)
是否可以获取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 );