알버트의 개발하는 블로그

자바 제21강 : 자바 Frame 클래스로 기본 윈도우창 만들기 (프레임) 본문

프로그래밍 언어/Java

자바 제21강 : 자바 Frame 클래스로 기본 윈도우창 만들기 (프레임)

알버트 2021. 9. 10. 10:30

 

이번 시간에는 자바에서 제공하는 Frame 클래스에 대해서 배워보겠습니다.

Frame 클래스는 각종 응용프로그램을 위한 윈도우를 제공하는 클래스입니다. Frame 클래스를 통해서 이제 단순한 콘솔창 말고 윈도우창을 만들거나 윈도우창을 조절할 수 있습니다. 그래서 GUI 프로그램에서 필요한 스킬입니다. 모든 GUI 프로그램에서는 한 개의 Frame이 필요합니다. 이제 간단한 예제를 통해서 Frame 클래스로 윈도우창을 만들고 닫아보겠습니다.

 

 


Frame 클래스 예제

package kr.koreait.windowTest;

import java.awt.Color;	//윈도우창 color 클래스
import java.awt.Frame;	//Frame클래스
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Random;	//랜덤난수클래스

//	Frame 클래스 객체를 생성해서 윈도우 만들기
public class WindowTest {

	public static void main(String[] args) {
		
		Frame window = new Frame("반가워요");// '반가워용' 제목의 윈도우를 만든다.
		window.setTitle("감사해요");// 윈도우 제목을 '감사해요'로 변경한다.
		
		// setBounds()메소드로 윈도우 위치와 크기를 설정
		window.setBounds(500, 500, 700, 300);	// ( x좌표, y좌표, 가로, 세로 )

		//	윈도우의 색깔을 랜덤하게 뽑아서 윈도우창에 넣어준다.
		window.setBackground(new Color(new Random().nextInt(16777215)));
		
//		Frame 클래스를 사용해서 생성한 윈도우 닫기
		window.addWindowListener(new WindowAdapter() {
//			windowClosing() 메소드를 override 해서 윈도우를 닫는 코드를 넣어준다.
			@Override
			public void windowClosing(WindowEvent e) {
				window.dispose();// 현재 윈도우만 닫는다.
			}
		});
		window.setVisible(true);// 윈도우를 화면에 표시하는 명령어. 반드시 해주어아햠
	}
}

 

소스 코드는 이와 같습니다. Frame 클래스를 이용하면 이처럼 간단한 코딩으로도 윈도우창을 구현할 수 있습니다. Frame window = new Frame("제목");을 선언하면 프레임 클래스 객체로 윈도우창을 생성됩니다.

그리고 이 제목을 setTitle 메소드로 변경할 수 있습니다. setBounds메소드가 또 중요한데요. 윈도우창의 위치와 크기를 조절해 줍니다. setBackground 메소드는 윈도우창의 배경색을 설정해주는 메소드입니다. 윈도우창을 생성했으면 닫아주어야 하는데요. 여기선 windowClosing() 메소드를 오버라이드하여서 윈도우를 닫는 코드를 넣어주었습니다. 그리고 꼭 마지막에 setVisible(true)를 선언해주어야 윈도우창이 보인답니다.

 

 

 

이제 한번 실행해보겠습니다.

대표사진 삭제

사진 설명을 입력하세요.

짜잔~ 이처럼 x, y좌표 500과 가로 700 세로 300의 윈도우창이 생성된 것을 볼 수 있습니다. 그리고 윈도우창의 배경색깔이 랜덤으로 찍히는 것을 알 수 있습니다. 계속해서 컴파일해보면 색깔이 다르게 나옵니다. 이처럼 Frame클래스는 윈도우창을 제공하는 클래스입니다. 그래서 이제 본격적으로 프로그램을 짜는 중급 이상의 분들에겐 꼭 익혀야 하는 클래스입니다.

 

 

읽어주셔서 감사합니다~