首頁 > 後端開發 > C++ > 如何在多螢幕設定中取得 WPF 中的目前螢幕尺寸?

如何在多螢幕設定中取得 WPF 中的目前螢幕尺寸?

Susan Sarandon
發布: 2025-01-05 16:22:40
原創
250 人瀏覽過

How to Get the Current Screen Size in WPF on a Multi-Screen Setup?

在WPF 中取得目前螢幕大小

您的問題重點是確定多螢幕設定中目前螢幕的大小,其中所有螢幕可能不使用相同的解析度。雖然您提到了對主畫面使用 SystemParameters.PrimaryScreenWidth 和 SystemParameters.PrimaryScreenHeight,但取得目前畫面的大小確實很重要。

為了解決這個問題,您可以使用 WpfScreen,這是一個封裝的包裝類別System.Windows.Forms 中的 Screen 類別。此類別提供了多種方法來檢索螢幕相關資訊:

  • AllScreens(): 傳回表示所有螢幕的 WpfScreen 物件的列舉。
  • GetScreenFrom(Window window): 檢索指定的WpfScreen window.
  • GetScreenFrom(Point point):
  • GetScreenFrom(Point point):
  • GetScreenFrom(Point point):
  • 獲取給定點的螢幕。

Primary:
    返回主畫面.
  • 此外,WpfScreen 也提供以下功能properties:
  • Device 與裝置無關的像素的螢幕邊界。
  • WorkingArea: 螢幕上的可用工作區域與裝置無關像素。
  • IsPrimary: 指示螢幕是否為主顯示器。

DeviceName:

顯示器的裝置名稱。
// Get the primary screen's size
var primaryScreen = WpfScreen.Primary;
Console.WriteLine("Primary Screen: {0} x {1}", primaryScreen.DeviceBounds.Width, primaryScreen.DeviceBounds.Height);

// Get the current window's screen size
var currentWindow = new Window();  // Replace this with the actual window object
var currentScreen = WpfScreen.GetScreenFrom(currentWindow);
Console.WriteLine("Current Window's Screen: {0} x {1}", currentScreen.DeviceBounds.Width, currentScreen.DeviceBounds.Height);

// Get the screen containing a specified point
var point = new Point(500, 300);
var containingScreen = WpfScreen.GetScreenFrom(point);
Console.WriteLine("Screen Containing Point: {0} x {1}", containingScreen.DeviceBounds.Width, containingScreen.DeviceBounds.Height);
登入後複製
用法範例:

以上是如何在多螢幕設定中取得 WPF 中的目前螢幕尺寸?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板