Sdílet prostřednictvím


Použití konfiguračních funkcí monitoru High-Level

Výčet fyzických monitorů

Existuje několik funkcí, které vyčíslují zobrazovací zařízení, včetně EnumDisplayMonitors a MonitorFromWindow. Tyto funkce jsou zdokumentované v dokumentaci GDI systému Windows v tématu Více monitorů zobrazení. Tyto funkce vracejí popisovače HMONITOR. Navzdory názvu však může být popisovač HMONITOR přidružen k více než jednomu fyzickému monitoru. Chcete-li konfigurovat nastavení monitoru, musí aplikace získat jedinečný popisovač fyzického monitoru voláním GetPhysicalMonitorsFromHMONITOR.

Pokud vaše aplikace používá Direct3D, můžete získat popisovač monitoru ze zařízení Direct3D voláním GetPhysicalMonitorsFromIDirect3DDevice9.

Podporované funkce

Monitor nemusí podporovat všechny funkce konfigurace monitoru. Pokud chcete zjistit, které funkce monitor podporuje, zavolejte GetMonitorCapabilities.

Nastavení průběžného monitorování

Nastavení kontinuálního monitorování je takové, které může být v rozsahu mezi minimální a maximální hodnotou. Většina konfiguračních funkcí monitorování vysoké úrovně řídí nastavení průběžného monitorování. Například jas a kontrast jsou průběžná nastavení.

Nastavení nepřetržitého monitorování nemá definované skutečné jednotky. Jednotky jsou libovolné a mohou se lišit od jednoho výrobce po druhé. Pokud mají dva monitory stejnou hodnotu jasu, může například jeden monitor vypadat mnohem jasněji než jiný. Aplikace obvykle uživateli zobrazí ovládací prvky posuvníku nebo ovládací prvky směrem nahoru. Uživatel pak může upravit nastavení tak, aby poskytoval nejlepší subjektivní kvalitu.

Změny ve stavu monitorování

Monitor může měnit stavy z různých důvodů, mezi které patří:

  • Uživatel změní nastavení ovládacími prvky předního panelu monitoru.
  • Uživatel změní rozlišení obrazovky monitoru, obnovovací frekvenci nebo hloubku bitu.
  • Aplikace používá funkce monitorování nízké úrovně ke změně nastavení, které není přístupné z funkcí vysoké úrovně.
  • Aplikace volá RestoreMonitorFactoryColorDefaults nebo RestoreMonitorFactoryDefaults.

Všechny tyto události můžou změnit nastavení monitorování. Můžou také změnit minimální a maximální hodnotu nastavení.

Závislosti mezi nastavením monitorování

Změna teploty barvy může změnit nastavení proudového řízení a zisku, a naopak to platí také. To jsou jediné závislosti mezi funkcemi konfigurace monitorování vysoké úrovně. Jiná nastavení můžou být přístupná jenom prostřednictvím funkcí monitorování nízké úrovně. Mezi těmito nastaveními a nastavením vysoké úrovně můžou existovat závislosti. Tyto závislosti jsou specifické pro dodavatele. Aplikace může tento problém vyřešit několika způsoby:

  • Používejte pouze funkce vysoké úrovně.
  • Po volání funkce nízké úrovně získejte aktuální hodnotu každého nastavení monitorování. Tento přístup může být bohužel pomalý, protože každé nastavení trvá přibližně 40 milisekund.
  • Používejte funkce nízké úrovně pouze u konkrétních modelů monitorování, jejichž chování rozumíte.

Zakázaná nastavení monitorování

Aplikace nemůže zakázat žádná nastavení monitorování voláním funkcí monitorování vysoké úrovně. Aplikace však může omylem zakázat nastavení, pokud používá funkce nízké úrovně ke změně nastavení monitorování, které nejsou podporovány funkcemi vysoké úrovně. Uživatel může také zakázat nastavení pomocí ovládacího prvku předního panelu. Toto chování je specifické pro dodavatele.

Pokud se nastavení monitorování zakáže, všechny funkce, které toto nastavení nastaví nebo načte, selžou a nastaví kód poslední chyby na ERROR_DISABLED_MONITOR_SETTING. V takovém případě může aplikace provést jednu z následujících věcí:

  • Zobrazte chybovou zprávu a navrhněte uživateli, že se pokusí nastavení upravit pomocí ovládacího prvku předního panelu.
  • Zavolejte funkci RestoreMonitorFactoryDefaults Pokud má monitor příznak MC_RESTORE_FACTORY_DEFAULTS_ENABLES_MONITOR_SETTINGS schopností, tato funkce povolí všechna nastavení monitorování podporovaná funkcemi monitorování vysoké úrovně. Funkce bohužel také resetuje nastavení monitorování na výchozí tovární nastavení.

Použití konfigurace monitoru