728x90
반응형
WinAPI
- 액셀러레이터
-
- 단축키
- 문자열 테이블
-
- 문자열을 리소스화 시켜서 불러온다
- 프로그램 전체를 수정하지 않아도 프로그램에 사용되는 문자열만 수정할 수 있다
- 게임을 예로 들면 대화창 번역을 손쉽게 할 수 있다
- GDI 오브젝트
-
- 선의 모양, 굵기, 색을 바꿀 수 있다
- 비트맵을 그리거나 들고올 수 있음
- 스톡 오브젝트
-
- GetStockObject
-
- 새로운 브러시 같은 object 생성
- SelectObject
-
- 생성한 object 를 사용하겠다는 함수
- 기존의 object 에 대한 핸들이 반환된다
- 색상
- 펜
-
- CreatePen() 함수로 펜을 만든다
- 브러시와 마찬가지로 SelectObject()를 사용하여 교체한다
- Pen은 동적할당을 받으므로 DeleteObject()로 지워준다
- 브러시
-
- CreateSolidBrush - 브러시 색만 설정
- CreateHatchBrush - 브러시의 색과 무늬까지 설정
- ROP 모드
-
- 반전모드
- 윈도우와 뷰포트
-
- 뷰포트 : 물리 좌표가 사용되는 영역, 실제 사용자 눈에 보이는 좌표
- 원점: 좌표의 기준이 되는 점
-
- SetViewportOrgEx() 함수로 원점을 화면 좌상단에서 원하는 위치로 옮길 수 있다
- 비트맵 이미지
-
- 버퍼링
-
- 이미지를 먼저 메모리에 복사하고 이를 화면에 고속 복사하는 방법을 쓴다
- 확대/축소는 할 수 없다
- CreateCompatibleDC(hdc)
-
- 메모리 DC를 만든다
- LoadBitmap, SelectObject
-
- 비트맵을 메모리에 올리는 함수
- BitBlt
-
- 비트맵을 실제로 화면에 띄우는 함수
-
- 메모리의 이미지를 화면으로 옮긴다
- 인자
-
- hdc, 가로, 세로, 넓이, 높이, MemDC, 0, 0, SRCCOPY
- StretchBlt
-
- 앞의 5인자
-
- 원본 이미지의 기준점 + 크기
- 뒤의 5인자
-
- 화면에 표시할 이미지의 기준점 + 크기
- 맨 뒤의 1인자
-
- 옵션
- 고속화
-
- 올리는 작업은 WM_CREATE
- Delete는 WM_DESTROY로
- 비트맵 도중에 사용하는 변수들은 static으로 선언하여 종료할 때 까지 비트맵이미지가 계속 메모리에 있도록 한다
- BitBlt 함수를 사용한 비트맵 출력
- StretchBlt를 활용한 비트맵 출력
- Visual Studio를 이용해서 비트맵 이미지 직접 만들기
- 그림판의 비트맵 VS에 붙이기
-
- 아무 그림이나 찾아서 그림판에서 크기 조절(Ctrl + W)
- VS에서 비트맵 파일을 열어 Ctrl+V
- 비트맵 파일 움직이기
-
- 경계검사
-
- 윈도우 범위 밖으로 졸라맨이 나가지 못하도록 한다
- 창 모양 고정
-
- 사용자가 창 크기를 바꿀 수 없게
- 비트맵을 읽어오는 LoadBitmap()을 WM_CREATE에 몰아서 비트맵 로드 시간을 줄인다
728x90
'코스웨어 > 15년 스마트컨트롤러' 카테고리의 다른 글
20151118_주재민_API_5(작성중) (4) | 2015.11.18 |
---|---|
20151118 임현수 업무일지 WIN32API #5 (4) | 2015.11.18 |
20151117-주재민-api (4) | 2015.11.18 |
김태현 WinAPI 4일차 단축키 만들기 문자열 테이블 GDI오브젝트 (5) | 2015.11.18 |
20151117 윤재희 #4. 그래픽 (5) | 2015.11.18 |
2015-11-17 Win32 API 개인업무일지 - 천정호 (6) | 2015.11.18 |
2015.11.17_개인업무일지_[Win32API #4]_이량경 (6) | 2015.11.18 |
20151117_안향진_API_4 (6) | 2015.11.18 |