比如说有2个JFrame a,b。b是紧贴在a旁边。当a在屏幕中位置发生变化时,有什么方法可以使b也随着移动。

解决方案 »

  1.   

    import java.awt.event.ComponentAdapter;
    import java.awt.event.ComponentEvent;import javax.swing.JFrame;
    public class T {
    public static void main(String[] args) {
    final JFrame a = new JFrame();
    a.setSize(300, 300);
    a.setLocationRelativeTo(null);
    a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); final JFrame b = new JFrame();
    b.setSize(200, 200);
    b.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); b.setLocation(a.getX() + a.getWidth(), a.getY());
    b.setVisible(true);
    a.setVisible(true);

    a.addComponentListener(new ComponentAdapter() {
    public void componentMoved(ComponentEvent e) {
    b.setLocation(a.getX() + a.getWidth(), a.getY());
    }
    });
    }
    }
      

  2.   

    b.setLocation(new Point(a.getLocation().x+a.getWidth(),a.getLocation.y);