본문 바로가기

프로그래밍/코드 조각

듀얼모니터의 가상좌표 얻어오기

싱글 모니터의 경우는 다음과 같이 얻어 올 수 있다.

left = 0;
top = 0;
right = GetSystemMetrics(SM_CXSREEEN);
bottom = GetSystemMetrics(SM_CYSCREEN);

듀얼모니터의 경우 각각의 모니터 좌표가 아닌 전체 두개이상의 모니터를 합친 전체 영역의 좌표를 구할 필요가 있다.

left = GetSystemMetrics(SM_XVIRTUALSCREEN);
top = GetSystemMetrics(SM_YVIRTUALSCREEN);
right = left + GetSystemMetrics(SM_CXVIRTUALSCREEN);
bottom = top + GetSystemMetrics(SM_CYVIRTUALSCREEN);

모니터의 배치와 기본 위치에 따라서 left, top이 음수 값이 될 수 있으니 주의하도록 하자