import java.awt.*;
import javax.swing.*;

public class OverlayLayoutTest implements Runnable {
    public void run() {
        JFrame f = new JFrame("test");

        JPanel container = new JPanel();
        container.setLayout(new OverlayLayout(container));

        JPanel first = new JPanel();
        first.setPreferredSize(new Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE));
        first.setBackground(new Color(0xccccff));
        first.setAlignmentX(1);
        first.setAlignmentY(0);

        JPanel second = new JPanel();
        second.add(new JLabel("This is the second component here."));
        second.setPreferredSize(new Dimension(100, 100));
        second.setBackground(new Color(0xffffcc));
        second.setAlignmentX(1);
        second.setAlignmentY(0);
        
        container.add(second);
        container.add(first);

        f.getContentPane().add(container);

        f.setSize(new Dimension(400, 300));
        f.setVisible(true);
    }

    public static void main(String[] args) {
        EventQueue.invokeLater(new OverlayLayoutTest());
    }
}

