」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何使用WinAPI取得螢幕解析度?

如何使用WinAPI取得螢幕解析度?

發佈於2024-11-09
瀏覽:308

How Can I Get the Screen Resolution Using WinAPI?

使用 WinAPI 取得螢幕解析度

在 WinAPI 中,存在多個函數來決定目前螢幕解析度。適當的選擇取決於具體要求。

檢索顯示尺寸

  • 檢索顯示尺寸
  • 檢索顯示尺寸
  • 主監視器:
  • 使用GetSystemMetrics(SM_CXSCREEN) 和GetSystemMetrics( SM_CYCYSEN) 取得主顯示器S的寬度高度。

所有顯示器: GetSystemMetrics(SM_CXVIRTUALSCREEN) 和 GetSystemMetrics(SM_CYVIRTUALSCREEN) 提供所有連接的顯示器的組合解析度。

工作區:

SystemParametersInfo(SPI_GETWORKAREA) 傳回主監視器上工作區的分辨率,不包括工具列和其他控制項佔用的區域。

特定監視器分辨率

要取得特定監視器的分辨率,請使用 GetMonitorInfo。此函數需要監視器的句柄,可以使用 MonitorFromWindow 取得該句柄。

高級顯示資訊How Can I Get the Screen Resolution Using WinAPI?

對於低階存取或修改顯示設置,WinAPI 提供函數,例如 EnumDisplayDevices、EnumDisplaySettings 和 ChangeDisplaySettings。這些允許檢索刷新率、顏色深度和修改顯示設定。

注意:

重要的是要考慮顯示器可能不會總是從 (0, 0) 座標開始。若要正確定位窗口,請使用 MonitorFromWindow 確定其所在的監視器,然後呼叫 GetMonitorInfo 以取得監視器的解析度和偏移量。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3