본문 바로가기

자바공부

명품 자바 프로그래밍 9장, 자바 GUI 기초, AWT와 스윙(Swing) 요약

728x90
반응형

* GUI란 Graphical User Interface의 약자로서 이미지 혹은 그래픽 등을 이용하여 메뉴 등을 포함한 화면을 구성하고, 키보드, 마우스 등의 편리한 입력 도수를 이용하여 사용자의 입력을 편리하게 하도록 작성된 사용자 인터페이스이다.

 

* 자바 언어에서 GUI를 구성하기 위한 기본 패키지는 AWT와 스윙(Swing)의 두 가지가 있으며, 스윙은 AWT와 달리 light weight component로서 운영체제의 자원에 의존하지 않고 작동하도록 구현하였다.

 

* 스윙은 AWT 컴포넌트 외에 많은 고급 컴포넌드를 가지고 있기 때문에 GUI 응용프로그램을 작성하는 데 우수하다.

 

* AWT 컴포넌트는 java.awt 패키지에 스윙 컴포넌트는 javax.swing 패키지에 구현되어 있다.

 

* 컨테이너는 여러 컴포넌트를 포함할 수 있는 특별한 GUI 컴포넌트이다. 컨테이너도 다른 컨테이너에 포함될 수 있는 컴포넌트이다.

 

* 스윙에서 프레임을 구성하기 위해서는 JFrame을 상속받은 새로운 클래스를 만들어 사용한 것이 좋다.

 

* JFreame은 내부에 컨텐트팬을 가지고 있으며, JFrame에 컴퓨넌트를 붙이기 위해서는 컨텐트팬에 컴포넌트를 부착하여야 한다.

 

* 스윙에서 JFrame의 윈도우 닫기 메뉴를 선택하여 프레임 윈도우를 닫을 수는 있어도 응용프로그램을 종료시킬 수는 없다. 응용프로그램을 종료시키기 위해서는 다음의 코드가 필요하다.

JFrame Jframe;
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 

* 컨테이너는 내부에 반드시 하나의 배치관리자(Layout Manager)를 두고 있으며, 이 배치관리자는 컨테이너에 부착되는 모든 컴포넌트들의 위치와 크기를 상대적으로 설정한다.

 

* FlowLayout 배치과닐자는 컴포넌트가 들어오면 순서대로 왼쪽에서 오른쪽으로 배치하며, 더 이상 오른쪽에 배치할 공간이 없으면 다시 아래로 내려와서 왼쪽으로 오른쪽으로 배치한다.

 

* BorderLayout 배치관리자는 컨테이너의 공간을 동(EAST), 서(WEST), 남(SOUTH), 북(NORTH), 중앙(CENTER)의 5개 영역으로 나누고 응용프로그램에서 지정한 영역에 컴포넌트를 배치한다.

 

* GridLayout 배치관리자는 컨테이너의 공간을 응용프로그램에서 설정한 2차원 그리도로 나누고, 컴포넌트가 들어오는 순서대로 좌에서 우로 배치하고, 다시 위에서 아래로 배치한다.

 

* CardLayout 배치관리자는 카드를 쌓아놓은 듯이 컴포넌트를 포개어 배치한다.

 

* 컨테이너에서 배치관리자를 삭제하고 응용프로그램에서 컴포넌트의 절대 위치와 크기를 설정하여 컴포넌트를 원하는 위치와 크기로 출력하게 할 수 있다.

반응형