-
Win32 API 3강. 리소스(resource) - 커서Win32 API with 나우캠퍼스 2022. 8. 13. 14:07
5. 커서 리소스
커서 리소스
▩ 커서 설정은 아이콘과 유사
▩ 접두사 : IDC
▩ 운영체제에서 제공하는 기본 커서 아이디가 있음. MSDN 문서 참조
기본 커서
▩ 기본 커서 로딩 및 적용
- 로딩 함수
HCURSOR LoadCursor ( HINSTANCE hInstance, LPCTSTR lpCursorName);
hInstance : NULL
lpCursorName : 커서 기본 아이디 입력
ATOM MyRegisterClass(HINSTANCE hInstance) { -------- 생략 ------------ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW); -------- 생략 ------------ }
임의의 커서
Cursor리소스 새로 만들기 커서 편집 핫스폿 추가 핫 스폿이란? :
- 핫 스폿은 마우스 커서 그림에서 클릭으로 인식할 부분의 좌표를 설정하는 곳이다.
핫 스폿 예시 기본 마우스 커서는 왼쪽 위 뾰족한 곳이 핫 스폿으로 설정되어 있는데, 우리가 임의의 커서를 만들면 이러한 핫 스폿을 설정해주어야 한다.
ATOM MyRegisterClass(HINSTANCE hInstance) { -------- 생략 ------------ wcex.hCursor = LoadCursor(hInstance, MAKEINTRESOURCE(IDC_MyCursor)); -------- 생략 ------------ }
윈도우에서 제공하는 기본 커서와 달리 임의의 커서에 대해서는 인스턴스와 MAKEINTRESOURCE를 사용해야 한다.
▩ WM_SETCURSOR를 이용한 커서 설정
- 마우스 이동할 때 발생하는 메시지
WM_MOUSEMOVE, WM_SETCURSOR
- SetCursor() : 원하는 커서로 설정
HCURSOR SetCursor(HDCURSOR hCursor)
- 사용예시
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { HCURSOR hCursor; switch (message) { case WM_SETCURSOR: hCursor = LoadCursor(hInst, MAKEINTRESOURCE(IDC_CURSOR1)); SetCursor(hCursor); break;
'Win32 API with 나우캠퍼스' 카테고리의 다른 글
Win32 API 4강. 그래픽(1) GDI, DC 개념과 함수 (0) 2022.08.13 Win32 API 3강. 리소스(resource) - 메뉴 및 문자열 리소스 (0) 2022.08.13 Win32 API 3강. 리소스(resource) - 아이콘 (0) 2022.08.13 Win32 API 3강. 리소스(resource) (0) 2022.08.13 Win32 API 2강. 프로그래밍 구조 (0) 2022.08.06