Beberapa Metrik Sistem Monitor

Fungsi GetSystemMetrics mengembalikan nilai untuk monitor utama, kecuali untuk SM_CXMAXTRACK dan SM_CYMAXTRACK, yang merujuk ke seluruh desktop. Metrik berikut sama untuk semua driver perangkat: SM_CXCURSOR, SM_CYCURSOR, SM_CXICON, SMCYICON. Kemampuan tampilan berikut sama untuk semua monitor: LOGPIXELSX, LOGPIXELSY, DESTOPHORZRES, DESKTOPVERTRES.

GetSystemMetrics juga memiliki konstanta yang hanya merujuk ke sistem Beberapa Monitor. SM_XVIRTUALSCREEN dan SM_YVIRTUALSCREEN mengidentifikasi sudut kiri atas layar virtual, SM_CXVIRTUALSCREEN dan SM_CYVIRTUALSCREEN adalah pengukuran vertikal dan horizontal layar virtual, SM_CMONITORS adalah jumlah monitor yang terpasang pada desktop, dan SM_SAMEDISPLAYFORMAT menunjukkan apakah semua monitor di desktop memiliki format warna yang sama.

Untuk mendapatkan informasi tentang monitor tampilan tunggal atau semua monitor tampilan di desktop, gunakan EnumDisplayMonitors. Persegi panjang jendela desktop yang dikembalikan oleh GetWindowRect atau GetClientRect selalu sama dengan persegi panjang monitor utama, untuk kompatibilitas dengan aplikasi yang ada. Dengan demikian, hasil

GetWindowRect(GetDesktopWindow(), &rc);

akan menjadi:

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

Untuk mengubah area kerja monitor, panggil SystemParametersInfo dengan SPI_SETWORKAREA dan pvParam yang menunjuk ke struktur RECT yang ada di monitor yang diinginkan. Jika pvParamNULL, area kerja monitor utama dimodifikasi. Menggunakan SPI_GETWORKAREA selalu mengembalikan area kerja monitor utama. Untuk mendapatkan area kerja monitor selain monitor utama, hubungi GetMonitorInfo.