dico.gif

i15947420946.gif

huuon2.gif



♨신규 게시물♨




♨신규 댓글♨




♨랭킹 TOP 30♨


  1. 사나 51,013
  2. 치즈돈가스덮밥 42,809
  3. 타이갓 42,690
  4. 달콤한 42,151
  5. 얍얍 37,292
  6. ZicP 35,207
  7. 투혼v 32,276
  8. 도리toS 27,747
  9. 헤이브로 24,790
  10. AkiREI 23,870
  11. 도리고 22,875
  12. 호날두마리치킨 17,437
  13. 깡따구 15,503
  14. 쯔쯔가무시 14,814
  15. 김돈치 14,272
  16. 키호 13,993
  17. 안인시우안 13,631
  18. 악당 13,375
  19. 개나리 12,651
  20. 코난 11,530
  21. 아싸콤 11,204
  22. 코딩충 10,360
  23. 사랑 10,195
  24. 지금몇시지 10,137
  25. 뉴비임다 9,525
  26. 규따네 9,475
  27. 브랜뉴 9,378
  28. 가다궄 9,180
  29. 반가워용 8,613
  30. 라일리 8,384

6faa2286ccd015fb37f28f688e13eac6.png

01. 크레이지 아케이드 만들기 (윈도우 창 보정,)

sacyz1n2019.08.10 09:42조회 수 55추천 수 2댓글 2

  • 7
    • 글자 크기

 

안녕하세요.

 

이번 시간은 윈도우 창을 보정해보겠습니다.

 

그 전에 프로젝트 파일을 아래와 같이 정리하겠습니다.

 

1.PNG

 

 

그리고 Define.h 이라는 헤더파일을 하나 만들었습니다.

 

내용을 아래와 같습니다.

 

 

 

2.PNG

 

그럼 화면 크기를 가로 800, 세로 600으로 적용시켜 주는대 무작정 CreateWindow에 있는 인자를 W INDOWCX, WINDOWCY로 설정하면 안됩니다.

3.png

만약 그렇게 설정하면 이 WINDOWCX, WINDOWCY 크기는 타이틀 바와 클라이언트 영역을 모두 고려해서 800, 600이 되는겁니다.

 

즉, 위 사진에 있는 크기가 800, 600이 된다는 겁니다.

 

그렇게 되면 순수 클라이언트 영역은 800,600이 아닌 타이틀바 크기를 뺀 크기일 것입니다.

 

때문에 순수 클라이언트 영역이 800, 600 이 될 수 있도록 타이틀바까지 고려해서 보정을 해줘야합니다.

 

보정해주기 위해서 InitInstance 함수로 가줍니다.

 

AdjustWindowRect 함수가 타이틀바 까지 고려한 크기를 첫번째 인자에 반환해줍니다.

 

 

5.PNG

 

 

 

아래와 같이 RECT는 단순 LONG 타입의 left, top, right, bottom 을 표현하는 변수를 가진 구조체입니다.

 

4.PNG

 

이렇게 되면 저희가 원하는 클라이언트 영역이 800, 600인 윈도우창이 생성됩니다.

 

6.PNG

 

(+)  메뉴바를 사용하지 않기때문에 메뉴와 관련된 함수는 삭제했습니다.

 

 

추천해주신 분들

  • 7
    • 글자 크기
02. 크레이지 아케이드 만들기 (PeekMessage, 게임 구조) (by sacyz1n) 00. 크레이지 아케이드 만들기 (Win API 소개) (by sacyz1n)

댓글 달기 WYSIWYG 사용

글쓴이 비밀번호
댓글 2
번호 제목 글쓴이 조회 수
80 [다크에덴]670 Mysql 비밀번호 변경하기 사나 6
79 디아블로3 구축법5 사나 104
78 다크에덴 670 구축법 사나 18
77 [던파]경매장 오픈하는 방법 사나 49
76 천상비 구축법7 사나 64
75 위드 구축법4 사나 53
74 Code 수정 유틸 ollydbg 사용법 뿌르뿌르 18
73 메이플 모작 진행상황 (툴)4 sacyz1n 107
72 브릿지 패턴 (Bridge Pattern)4 sacyz1n 52
71 [ubuntu] Apache2, MySQL, PHP 설치 및 MySQL 비밀번호 설정 벨루볼루 13
70 [ubuntu] MySQL Too many connections 해결1 벨루볼루 16
69 디스코드 봇 만들기 [Create Discord Bot] - 1 토끼린 42
68 파이썬을 이용한 간단한 메이플스토리 만들기(6/20) - 로그인 기능 수정및 다음화면 이미지 넣기4 지금몇시지 130
67 03. 크레이지 아케이드 만들기 (타이머 매니저, 싱글톤 패턴)4 sacyz1n 108
66 02. 크레이지 아케이드 만들기 (PeekMessage, 게임 구조) sacyz1n 50
01. 크레이지 아케이드 만들기 (윈도우 창 보정,)2 sacyz1n 55
64 00. 크레이지 아케이드 만들기 (Win API 소개)4 sacyz1n 107
63 파이썬을 이용한 간단한 메이플스토리 만들기(5/20) - 회원가입 및 로그인 기능 수정 및 다음 화면 만들기1 지금몇시지 68
62 파이썬을 이용한 간단한 메이플스토리 만들기 공지(포토샵 디자이너 모집)2 지금몇시지 96
61 배치파일로 로그기록 하기! 초코슬램 15
첨부 (7)
Framework.zip
17.33MB / Download 0
">
1.PNG
23.2KB / Download 0
">
2.PNG
12.5KB / Download 0
">
3.png
8.4KB / Download 0
">
5.PNG
45.9KB / Download 0
">
4.PNG
9.8KB / Download 0
">
6.PNG
6.4KB / Download 0
">

서버에 요청 중입니다. 잠시만 기다려 주십시오...