High-Level Monitor 구성 함수 사용
물리적 모니터 열거
EnumDisplayMonitors 및 MonitorFromWindow를 포함하여 디스플레이 디바이스를 열거하는 여러 함수가 있습니다. 이러한 함수는 여러 디스플레이 모니터 항목 아래의 Windows GDI 설명서에 설명되어 있습니다. 이러한 함수는 HMONITOR 핸들을 반환합니다. 그러나 이름에도 불구하고 HMONITOR 핸들은 둘 이상의 물리적 모니터와 연결할 수 있습니다. 모니터에서 설정을 구성하려면 애플리케이션이 GetPhysicalMonitorsFromHMONITOR를 호출하여 물리적 모니터에 대한 고유한 핸들을 가져와야 합니다.
애플리케이션에서 Direct3D를 사용하는 경우 GetPhysicalMonitorsFromIDirect3DDevice9를 호출하여 Direct3D 디바이스에서 모니터 핸들을 가져올 수 있습니다.
지원되는 함수
모니터가 모든 모니터 구성 기능을 지원하지 않을 수 있습니다. 모니터에서 지원하는 함수를 확인하려면 GetMonitorCapabilities를 호출합니다.
연속 모니터 설정
연속 모니터 설정은 최소값과 최대값 사이의 범위를 지정할 수 있는 설정입니다. 대부분의 상위 수준 모니터 구성 함수는 연속 모니터 설정을 제어합니다. 예를 들어 밝기와 대비는 연속 설정입니다.
연속 모니터 설정에는 실제 단위가 정의되지 않았습니다. 단위는 임의이며 제조업체마다 다를 수 있습니다. 예를 들어 두 모니터의 밝기 값이 같으면 한 모니터가 다른 모니터보다 훨씬 밝게 보일 수 있습니다. 일반적으로 애플리케이션은 사용자에게 슬라이더 컨트롤 또는 업다운 컨트롤을 제공합니다. 그런 다음 사용자는 설정을 조정하여 최고의 주관적인 품질을 제공할 수 있습니다.
모니터 상태의 변경 내용
모니터는 다음과 같은 다양한 이유로 상태를 변경할 수 있습니다.
- 사용자는 모니터의 전면 패널 컨트롤을 사용하여 설정을 변경합니다.
- 사용자가 모니터의 화면 해상도, 새로 고침 속도 또는 비트 깊이를 변경합니다.
- 애플리케이션은 하위 수준 모니터 함수를 사용하여 상위 수준 함수에서 액세스할 수 없는 설정을 변경합니다.
- 애플리케이션은 RestoreMonitorFactoryColorDefaults 또는 RestoreMonitorFactoryDefaults를 호출합니다.
이러한 모든 이벤트는 모니터 설정을 변경할 수 있습니다. 설정의 최소값과 최대값을 변경할 수도 있습니다.
모니터 설정 간의 종속성
색 온도를 변경하면 현재 드라이브와 게인 설정이 변경되고 반대의 경우도 마찬가지입니다. 상위 수준 모니터 구성 함수 중에서 유일한 종속성입니다. 다른 설정은 하위 수준 모니터 함수를 통해서만 액세스할 수 있습니다. 이러한 설정과 상위 수준 설정 간에 종속성이 있을 수 있습니다. 이러한 종속성은 공급업체별로 다릅니다. 애플리케이션은 다음과 같은 여러 가지 방법으로 이 문제를 처리할 수 있습니다.
- 상위 수준 함수만 사용합니다.
- 하위 수준 함수를 호출한 후 모든 모니터 설정의 현재 값을 가져옵니다. 안타깝게도 각 설정을 가져오는 데 약 40밀리초가 걸리기 때문에 이 방법은 느릴 수 있습니다.
- 동작을 이해하는 특정 모니터 모델에서만 하위 수준 함수를 사용합니다.
사용 안 함 모니터 설정
애플리케이션은 상위 수준 모니터 함수를 호출하여 모니터 설정을 사용하지 않도록 설정할 수 없습니다. 그러나 하위 수준 함수를 사용하여 상위 수준 함수에서 지원하지 않는 모니터 설정을 변경하는 경우 애플리케이션에서 실수로 설정을 사용하지 않도록 설정할 수 있습니다. 또한 사용자는 전면 패널 컨트롤을 사용하여 설정을 사용하지 않도록 설정할 수 있습니다. 이러한 동작은 공급업체별로 다릅니다.
모니터 설정을 사용하지 않도록 설정하면 해당 설정을 설정하거나 검색하는 모든 함수가 실패하고 마지막 오류 코드를 ERROR_DISABLED_MONITOR_SETTING 설정합니다. 이 경우 애플리케이션은 다음 중 하나를 수행할 수 있습니다.
- 오류 메시지를 표시하고 사용자에게 전면 패널 컨트롤을 사용하여 설정을 조정해 보라고 제안합니다.
- RestoreMonitorFactoryDefaults 함수를 호출합니다. 모니터에 MC_RESTORE_FACTORY_DEFAULTS_ENABLES_MONITOR_SETTINGS 기능 플래그가 있는 경우 이 함수는 상위 수준 모니터 함수에서 지원하는 모든 모니터 설정을 사용하도록 설정합니다. 아쉽게도 이 함수는 모니터 설정을 공장 기본값으로 다시 설정합니다.
관련 항목