* 배치관리자를 없에야 하는 경우
- 컴포넌트를 상대적인 위치가 아닌 절대적 위치에 위치할 때
- 컴포넌트의 크기를 절대적인 크기를 가지고 싶게 할때
- 입력에 따라 수시로 컴포넌트의 위치와 크기가 변하는 경우 > 위치와 크기 고정
- 여러 컴포넌트를 겹치는 효과를 연출할 때
* 컨테이너의 배치관리자 제거
- container.setLayout(null);
* 절대적 위치와 크기를 가지는 컴포넌트
- java.awt.Component 클래스 이용
- method
ⓐ void setSize(int w,int h); // w*h의 크기를 가지는 컴포넌트 생성
ⓑ void setLocation(int x, int y); // 컴포넌트의 왼쪽상단 모서리 좌표를 (x,y)로 설정
ⓒ void setBounds(int x, int y, int w, int h); // w*h인 크기를 가지는 컴포넌트의 왼쪽상단이 (x,y)로 오게 생성
ex)
import javax.swing.*;
import java.awt.*;
public class exam1 extends JFrame{
exam1(){
setTitle("BorderLayout Practice");
setSize(300,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container cp = getContentPane();
cp.setLayout(null); // 배치 관리자 삭제
JButton bt1 = new JButton("TEST1"); // 버튼 생성
JButton bt2 = new JButton("TEST2");
bt1.setSize(80,50); // 버튼 크기 80x50
bt1.setLocation(20,20); // 왼쪽 모서리 위치를 (20,20)으로 위치
bt2.setBounds(100,100,90,70); // 크기가 90*70이며 왼쪽 모서리 위치가 (100,100)
cp.add(bt1);
cp.add(bt2);// 버튼을 컴테이너에 부착!!
setVisible(true);
}
public static void main(String[] args){
exam1 A = new exam1();
}
}