OverlayLayout 在 Java 中的重要性是什么?
OverlayLayout
- 一个 OverlayLayout 是 Object 类的子类,它可以把组件排列在彼此的顶部,并且使用组件指定的对齐方式来按相对位置放置它们。
- 当为任何组件指定了不同的大小时,我们可以看到所有组件。
- 要将组件按相对位置或在框架中的任何位置对齐,我们可以使用两个方法 setAlignmentX() 和 setAlignmentY()。参数是介于 **0.0f** 与 **1.0f** 之间的浮动值。默认情况下,一个 OverlayLayout 采用最大的 **1.0f 。
- OverlayLayout 的重要方法是 addLayoutComponent(), getTarget(), invalidateLayout(), maximumLayoutSize() 等等。
示例
import java.awt.*;
import javax.swing.*;
import javax.swing.OverlayLayout;
public class OverlayLayoutTest extends JFrame {
public OverlayLayoutTest() {
setTitle("OverlayLayout Test");
JPanel panel = new JPanel() {
public boolean isOptimizedDrawingEnabled() {
return false;
}
};
LayoutManager overlay = new OverlayLayout(panel);
panel.setLayout(overlay);
JButton button = new JButton("Small");
button.setMaximumSize(new Dimension(75, 50));
button.setBackground(Color.white);
panel.add(button);
button = new JButton("Medium Btn");
button.setMaximumSize(new Dimension(125, 75));
button.setBackground(Color.lightGray);
panel.add(button);
button = new JButton("Large Button");
button.setMaximumSize(new Dimension(200, 100));
button.setBackground(Color.orange);
panel.add(button);
add(panel, BorderLayout.CENTER);
setSize(400, 300);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String args[]) {
new OverlayLayoutTest();
}
}输出
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP