AWT
GUI프로그래밍을 위한 도구로, JAVA로 구현하는 것이 아닌 OS의 컴포넌트를 그대로 사용한다.
AWT의 구성
AWT관련 패키지는 모두 java.awt로 시작하며, AWT컴포넌트의 최상위 조상은 java.awt.Component 클래스이다.(메뉴 관련 컴포넌트 제외)
SWING
AWT를 확장한 GUI 프로그래밍 도구로, AWT보다 많은 종류의 컴포넌트를 제공하며 OS의 컴포넌트를 사용하지 않고 JAVA로 구현한다.
CONTAINER
다른 컴포넌트를 포함할 수 있는 컴포넌트이며 add()를 사용하여 추가한다.
종류 | 설명 |
독립적인 컨테이너 | 독립 사용 가능, 다른 컴포넌트나 종속적 컨테이너 포함 가능 |
종속적인 컨테이너 | 독립 사용 불가(다른 컨테이너에 포함) |
LAYOUT
종류 | 특징 |
BorderLayout | Window Component의 기본 레이아웃이며, 하나의 지역에는 하나의 Component가 배치 |
FlowLayout | Container Component의 기본 레이아웃이며, 배치되는 컴포넌트는 고유 크기대로 배치 |
GridLayout | 행과 열로 구성된 레이아웃으로 컴포넌트의 크기가 동일하게 배치 |
CardLayout | Container Component에만 적용할 수 있는 레이아웃으로 한정적인 공간에 다른 디자인을 제공할 때 사용 |
GridBagLayout | 행마다 열의 크기, 개수를 다르게 보여 줄 때 사용(수동 배치) |
참고 블로그 :
[Java] 자바 GUI / Layout 종류 / 수동배치 : 네이버 블로그 (naver.com)
자바 스윙 배치관리자(Layout)-Border/Flow/Grid Layout :: ITPangPang (tistory.com)