すべてのモニターの番号と解像度を検索します
-
20-09-2019 - |
質問
どのようなモニターが接続されており、どの解像度で実行されているかを確認するには、ウィンドウをポーリングするにはどうすればよいでしょうか?
解決
C# の場合: Screen
クラス 単一システム上の 1 つまたは複数のディスプレイ デバイスを表します。あなたが欲しいのは、 Bounds
属性。
foreach(var screen in Screen.AllScreens)
{
// For each screen, add the screen properties to a list box.
listBox1.Items.Add("Device Name: " + screen.DeviceName);
listBox1.Items.Add("Bounds: " + screen.Bounds.ToString());
listBox1.Items.Add("Type: " + screen.GetType().ToString());
listBox1.Items.Add("Working Area: " + screen.WorkingArea.ToString());
listBox1.Items.Add("Primary Screen: " + screen.Primary.ToString());
}
他のヒント
Screenクラスを使用してください。
はScreen.AllScreens
アレイ内モニターの全てを見て、Bounds
プロパティを使用してそれぞれの解像度と位置を確認することができます。
Windowsのみのモニターがあることを考えているように、一部のビデオカードは、単一の非常に広い画面に2台のモニタをマージすることに注意してください。あなたがしたい場合は、画面の幅が2倍の高さを超えているかどうかをチェックすることができます。もしそうなら、それはおそらく、水平スパンだとあなたは二つの等しいの画面のように扱うことができます。しかし、これはより複雑であり、あなたはそれを行う必要はありません。垂直方向のスパンでもサポートされていますが、あまり一般的ではないされます。
http://msdn.microsoft.com/en-us/magazine /cc301462.aspxする
GetSystemMetrics関数を使用すると、ウィンドウキャプションのアイコンまたは高さのサイズのように、世界的な寸法のすべての種類を取得するために使用できる便利な機能です。 Windows 2000では、複数のモニタシステム用の画面の仮想サイズを取得するSM_CXVIRTUALSCREENとSM_CYVIRTUALSCREENなどの新しいパラメータがあります。 GetSystemMetrics関数は、あなたが得ることができるすべての異なるシステムメトリック(寸法)を参照するために、Windowsの初心者-と長所は、あまりにも-すべきドキュメントをチェックしてください。 http://msdn.microsoftで最新のためのプラットフォームSDKを参照してください。 COM /ライブラリ/ EN-US / SYSINFO / sysinfo_8fjn.asp に。 GetSystemMetrics関数頻繁に使用する必要が便利な関数であり、新しいものには、Windowsのすべてのバージョンが表示されます。