Computer >> Máy Tính >  >> Lập trình >> Java

Tầm quan trọng của OverlayLayout trong Java là gì?

OverlayLayout

  • Một OverlayLayout là một lớp con của Đối tượng và nó có thể sắp xếp các thành phần chồng lên nhau và sử dụng các căn chỉnh đã chỉ định của các thành phần để định vị chúng một cách tương đối.
  • Khi cung cấp các kích thước khác nhau cho bất kỳ thành phần nào, chúng ta có thể thấy tất cả các thành phần đó.
  • Để căn chỉnh các thành phần so với thành phần khác hoặc bất kỳ nơi nào trong khung, chúng tôi có thể sử dụng hai phương pháp setAlignmentX () setAlignmentY () . Các tham số là các giá trị thực nằm trong khoảng từ 0,0f đến 1,0f. OverlayLayout chiếm tối đa 1,0f bởi mặc định.
  • Các phương thức quan trọng của OverlayLayout là addLayoutComponent (), getTarget () , voidateLayout () , MaximumLayoutSize () và v.v.

Ví dụ

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();
   }
}

Đầu ra

Tầm quan trọng của OverlayLayout trong Java là gì?