개인 자료란 (JE)

  서버 커뮤니티

Profile 윈초 디벨로퍼 인증 개발자

wincho_ 8ff851e059fb4dd59be0b55d44f8149f

Profile

커뮤니티 소통 개발하기 프로그래밍

[게임개발로 시작하는 자바 EP. 5] 창 띄우기

2022.02.13 조회 수 2822 추천 수 0

이전 글: EP. 4 - 함수

다음 글: EP. 6 - 게임루프 만들기


| Step 1. 어떤걸로?

자바에서 UI를 만들때는 두가지의 옵션을 선택해볼수 있습니다.

자바 기본 api와 외부 라이브러리중에서요.

외부 라이브러리는 어떤면에선 더 좋지만, 기본 api로도 2D게임은 충분히 제작이 가능하기때문에, 

우리는 자바 api를 사용해보겠습니다.


자바 api에서 윈도우를 쉽게 띄우려면 javax.swing을 사용할수 있습니다.

물론 java.awt도 존재하지만 javax.swing이 훨신 좋다고 생각되기때문에 우리는 javax.swing을 사용해보겠습니다.


| Step 2. JFrame

javax.swing의 모든 클래스는 J로 시작합니다.

창을 띄우려면 JFrame이라는 클래스를 사용해야해요.


JFrame 변수를 생성해봅시다.

자 우리는 창을 만들었습니다.

하지만, 지금 실행해봐도 창이 안보이죠.

창을 생성했지만 띄우지 않았기 때문입니다


JFrame에는 setVisible이라는 함수가 존재합니다.

boolean부분에는 창이 보이게하려면 true, 보이지 않게하려면 false로 설정해주시면됩니다.

우리는 창을 보이게 하고싶으니 true를 넣어주겠습니다.

실행하면 창이 뜨는것을 확인할수 있습니다!


창의 크기도 정해봅시다.

JFrame에는 setSize라는 함수도 존재합니다.

아래에 있는 int 두개가 파라미터로 들어가는 함수를 사용해줄겁니다.

1000x500픽셀인 창을 원하시면 파라미터에 1000, 500을 넣어주시면 크기가 설정됩니다.


실행하면 크기까지 정해진걸 볼수 있습니다!


4강은 12일만에 쓰고 5강은 13일만에 썼네요

14일뒤에 다음강 쓸...읍읍ㅇㅂ 




10개의 댓글

KaMa_
2022.02.13

기다렸습니다 ㅠㅠ

윈초
2022.02.18
@KaMa_

하핫... 열심히 하겠습니다

HAN1110
2022.02.25

상속해주세요. 부탁입니다

프로젝트
2022.02.25
@HAN1110

무슨 의미이신지..

HAN1110
2022.02.26
@프로젝트

extends JFrame

말입니다

윈초
2022.02.26
@HAN1110

사람마다 코드스타일이 다르잖아요.

저는 저 스타일을 좋아하는것뿐이구요

HAN1110
2022.02.26
@윈초

아...

근데 그게 더 짧아서 전 편하더라구요

JJun
2022.05.24

코드 사진이 안보이네요;;; 확인부탁드립니다.

윈초
2022.05.24
@JJun

확인했습니다.

한마포 서버에서 삭제된것같은데, 다시 업로드 해둘게요!

JJun
2022.05.26
@윈초

감사합니다 처음 강의부터 잘보고 따라해보고 있습니다!

뉴스 및 창작물
/files/thumbnails/761/908/003/262x150.crop.jpg?20241025153749

건축

서울 숭례문(崇禮門) 4

KHC

2024-10-25

2

/files/thumbnails/578/899/003/262x150.crop.jpg?20241010142350

건축

경주 월정교 1

KHC

2024-10-10

2

/files/thumbnails/219/899/003/262x150.crop.jpg?20241009200950

건축

송전탑+도시 2

dbasd12

2024-10-09

2

/files/thumbnails/246/898/003/262x150.crop.jpg?20241008102328

레드스톤

단다단 - 오토노케(オトノケ) | 마인크래프트 노트블럭 커버

노트블럭전문가

2024-10-08

1

/files/thumbnails/348/896/003/262x150.crop.jpg?20241006103035

디도스/봇테러등등을 낚는 방법 4

물귀신

2024-10-06

3