: http://msdn.microsoft.com/en-us/library/dd162610%28VS.85%29.aspx
BOOL EnumDisplayMonitors(
_In_ HDC hdc,
_In_ LPCRECT lprcClip,
_In_ MONITORENUMPROC lpfnEnum,
_In_ LPARAM dwData
);
당신은 다음과 같이 NULL로 처음 2 개 매개 변수를 설정하는이 함수를 호출 할 필요가
:
EnumDisplayMonitors(NULL, NULL, MyPaintEnumProc, 0);
//Enumerates all display monitors.
//The callback function receives a NULL HDC.
이제 MonitorEnumProc 콜백 함수가 생겼습니다 : http://msdn.microsoft.com/en-us/library/dd145061%28v=vs.85%29.aspx
(210)
BOOL CALLBACK MonitorEnumProc(
_In_ HMONITOR hMonitor,
_In_ HDC hdcMonitor,
_In_ LPRECT lprcMonitor,
_In_ LPARAM dwData
);
당신은 다시 lprcMonitor 채워지 wiil :
RECT 구조에 대한 포인터. hdcMonitor가 NULL이 아닌 경우이 사각형은 hdcMonitor로 식별되는 장치 컨텍스트의 클리핑 영역과 디스플레이 모니터 사각형 인 의 교차점입니다. 사각형 좌표는 장치 컨텍스트 좌표입니다. 당신이 확장 모드 (의 구형이 다른) 또는 중복이 있는지 여부를 결정할 수있는 모든 모니터에 대해이 값을 기준으로
If hdcMonitor is NULL, this rectangle is the display monitor rectangle. The rectangle coordinates are virtual-screen coordinates.
(그들은 동일).
HTH - 행운을 빌어 요!
좋은 질문입니다! +1 – duDE