你可能还想看看这里
OverlayLayout看到的东西。它不包括在常规画廊中,但可能会很有趣。
重叠样本
import java.awt.BorderLayout;import java.awt.Color;import java.awt.Dimension;import javax.swing.Jframe;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.OverlayLayout;public class OverlaySample { public static void main(String args[]) { Jframe frame = new Jframe("Overlay Sample"); frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE); JPanel panel = new JPanel(); panel.setLayout(new OverlayLayout(panel)); panel.add(create(1, "One", Color.gray.brighter())); panel.add(create(2, "Two", Color.gray)); panel.add(create(3, "Three", Color.gray.darker())); frame.add(panel, BorderLayout.CENTER); frame.pack(); frame.setLocationByPlatform(true); frame.setVisible(true); } private static JLabel create(final int index, String name, Color color) { JLabel label = new JLabel(name) { private static final int N = 64; @Override public boolean isOpaque() { return true; } @Override public Dimension getPreferredSize() { return new Dimension(index * N, index * N); } @Override public Dimension getMaximumSize() { return new Dimension(index * N, index * N); } }; label.setHorizontalAlignment(JLabel.RIGHT); label.setVerticalAlignment(JLabel.BOTTOM); label.setBackground(color); label.setAlignmentX(0.0f); label.setAlignmentY(0.0f); return label; }}


