다음을 통해 공유


High-Level Monitor 구성 함수 사용

물리적 모니터 열거

EnumDisplayMonitorsMonitorFromWindow를 포함하여 디스플레이 디바이스를 열거하는 여러 함수가 있습니다. 이러한 함수는 여러 디스플레이 모니터 항목 아래의 Windows GDI 설명서에 설명되어 있습니다. 이러한 함수는 HMONITOR 핸들을 반환합니다. 그러나 이름에도 불구하고 HMONITOR 핸들은 둘 이상의 물리적 모니터와 연결할 수 있습니다. 모니터에서 설정을 구성하려면 애플리케이션이 GetPhysicalMonitorsFromHMONITOR를 호출하여 물리적 모니터에 대한 고유한 핸들을 가져와야 합니다.

애플리케이션에서 Direct3D를 사용하는 경우 GetPhysicalMonitorsFromIDirect3DDevice9를 호출하여 Direct3D 디바이스에서 모니터 핸들을 가져올 수 있습니다.

지원되는 함수

모니터가 모든 모니터 구성 기능을 지원하지 않을 수 있습니다. 모니터에서 지원하는 함수를 확인하려면 GetMonitorCapabilities를 호출합니다.

연속 모니터 설정

연속 모니터 설정은 최소값과 최대값 사이의 범위를 지정할 수 있는 설정입니다. 대부분의 상위 수준 모니터 구성 함수는 연속 모니터 설정을 제어합니다. 예를 들어 밝기와 대비는 연속 설정입니다.

연속 모니터 설정에는 실제 단위가 정의되지 않았습니다. 단위는 임의이며 제조업체마다 다를 수 있습니다. 예를 들어 두 모니터의 밝기 값이 같으면 한 모니터가 다른 모니터보다 훨씬 밝게 보일 수 있습니다. 일반적으로 애플리케이션은 사용자에게 슬라이더 컨트롤 또는 업다운 컨트롤을 제공합니다. 그런 다음 사용자는 설정을 조정하여 최고의 주관적인 품질을 제공할 수 있습니다.

모니터 상태의 변경 내용

모니터는 다음과 같은 다양한 이유로 상태를 변경할 수 있습니다.

  • 사용자는 모니터의 전면 패널 컨트롤을 사용하여 설정을 변경합니다.
  • 사용자가 모니터의 화면 해상도, 새로 고침 속도 또는 비트 깊이를 변경합니다.
  • 애플리케이션은 하위 수준 모니터 함수를 사용하여 상위 수준 함수에서 액세스할 수 없는 설정을 변경합니다.
  • 애플리케이션은 RestoreMonitorFactoryColorDefaults 또는 RestoreMonitorFactoryDefaults를 호출합니다.

이러한 모든 이벤트는 모니터 설정을 변경할 수 있습니다. 설정의 최소값과 최대값을 변경할 수도 있습니다.

모니터 설정 간의 종속성

색 온도를 변경하면 현재 드라이브와 게인 설정이 변경되고 반대의 경우도 마찬가지입니다. 상위 수준 모니터 구성 함수 중에서 유일한 종속성입니다. 다른 설정은 하위 수준 모니터 함수를 통해서만 액세스할 수 있습니다. 이러한 설정과 상위 수준 설정 간에 종속성이 있을 수 있습니다. 이러한 종속성은 공급업체별로 다릅니다. 애플리케이션은 다음과 같은 여러 가지 방법으로 이 문제를 처리할 수 있습니다.

  • 상위 수준 함수만 사용합니다.
  • 하위 수준 함수를 호출한 후 모든 모니터 설정의 현재 값을 가져옵니다. 안타깝게도 각 설정을 가져오는 데 약 40밀리초가 걸리기 때문에 이 방법은 느릴 수 있습니다.
  • 동작을 이해하는 특정 모니터 모델에서만 하위 수준 함수를 사용합니다.

사용 안 함 모니터 설정

애플리케이션은 상위 수준 모니터 함수를 호출하여 모니터 설정을 사용하지 않도록 설정할 수 없습니다. 그러나 하위 수준 함수를 사용하여 상위 수준 함수에서 지원하지 않는 모니터 설정을 변경하는 경우 애플리케이션에서 실수로 설정을 사용하지 않도록 설정할 수 있습니다. 또한 사용자는 전면 패널 컨트롤을 사용하여 설정을 사용하지 않도록 설정할 수 있습니다. 이러한 동작은 공급업체별로 다릅니다.

모니터 설정을 사용하지 않도록 설정하면 해당 설정을 설정하거나 검색하는 모든 함수가 실패하고 마지막 오류 코드를 ERROR_DISABLED_MONITOR_SETTING 설정합니다. 이 경우 애플리케이션은 다음 중 하나를 수행할 수 있습니다.

  • 오류 메시지를 표시하고 사용자에게 전면 패널 컨트롤을 사용하여 설정을 조정해 보라고 제안합니다.
  • RestoreMonitorFactoryDefaults 함수를 호출합니다. 모니터에 MC_RESTORE_FACTORY_DEFAULTS_ENABLES_MONITOR_SETTINGS 기능 플래그가 있는 경우 이 함수는 상위 수준 모니터 함수에서 지원하는 모든 모니터 설정을 사용하도록 설정합니다. 아쉽게도 이 함수는 모니터 설정을 공장 기본값으로 다시 설정합니다.

모니터 구성 사용