使用 WinAPI 取得螢幕解析度
在 WinAPI 中,存在多個函數來決定目前螢幕解析度。適當的選擇取決於具體要求。
檢索顯示尺寸
所有顯示器: GetSystemMetrics(SM_CXVIRTUALSCREEN) 和 GetSystemMetrics(SM_CYVIRTUALSCREEN) 提供所有連接的顯示器的組合解析度。
工作區:SystemParametersInfo(SPI_GETWORKAREA) 傳回主監視器上工作區的分辨率,不包括工具列和其他控制項佔用的區域。
特定監視器分辨率
要取得特定監視器的分辨率,請使用 GetMonitorInfo。此函數需要監視器的句柄,可以使用 MonitorFromWindow 取得該句柄。
高級顯示資訊
對於低階存取或修改顯示設置,WinAPI 提供函數,例如 EnumDisplayDevices、EnumDisplaySettings 和 ChangeDisplaySettings。這些允許檢索刷新率、顏色深度和修改顯示設定。
注意:重要的是要考慮顯示器可能不會總是從 (0, 0) 座標開始。若要正確定位窗口,請使用 MonitorFromWindow 確定其所在的監視器,然後呼叫 GetMonitorInfo 以取得監視器的解析度和偏移量。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3