Delen via


Metrische gegevens van meerdere bewakingssysteem

De functie GetSystemMetrics retourneert waarden voor de primaire monitor, met uitzondering van SM_CXMAXTRACK en SM_CYMAXTRACK, die verwijzen naar het hele bureaublad. De volgende metrische gegevens zijn hetzelfde voor alle apparaatstuurprogramma's: SM_CXCURSOR, SM_CYCURSOR, SM_CXICON, SMCYICON. De volgende weergavemogelijkheden zijn hetzelfde voor alle monitors: LOG PIXELSX, LOG PIXELSY, DESTOPHORZRES, DESKTOPVERTRES.

GetSystemMetrics- heeft ook constanten die alleen verwijzen naar een systeem met meerdere beeldschermen. SM_XVIRTUALSCREEN en SM_YVIRTUALSCREEN de linkerbovenhoek van het virtuele scherm identificeren, zijn SM_CXVIRTUALSCREEN en SM_CYVIRTUALSCREEN de verticale en horizontale metingen van het virtuele scherm, SM_CMONITORS het aantal beeldschermen dat aan het bureaublad is gekoppeld en SM_SAMEDISPLAYFORMAT geeft aan of alle beeldschermen op het bureaublad dezelfde kleurindeling hebben.

Gebruik EnumDisplayMonitors voor informatie over één beeldscherm of alle beeldschermen op een bureaublad. De rechthoek van het bureaubladvenster dat wordt geretourneerd door GetWindowRect of GetClientRect- is altijd gelijk aan de rechthoek van de primaire monitor, voor compatibiliteit met bestaande toepassingen. Het resultaat van

GetWindowRect(GetDesktopWindow(), &rc);

is:

rc.left = 0; 
rc.top = 0; 
rc.right = GetSystemMetrics (SM_CXSCREEN); 
rc.bottom = GetSystemMetrics (SM_CYSCREEN);

Als u het werkgebied van een monitor wilt wijzigen, roept u SystemParametersInfo- aan met SPI_SETWORKAREA en pvParam- die verwijst naar een RECT- structuur die zich op de gewenste monitor bevindt. Als pvParam- is NULL-, wordt het werkgebied van de primaire monitor gewijzigd. Als u SPI_GETWORKAREA gebruikt, wordt altijd het werkgebied van de primaire monitor geretourneerd. Als u het werkgebied van een andere monitor dan de primaire monitor wilt ophalen, roept u GetMonitorInfo-aan.