7

Screen.AllScreensハードウェア構成に関係なく、すべてのディスプレイが .NET から返されますか? たとえば、1 台の PC で次のことができます。

  1. 2 つのディスプレイへのビデオ カード出力 = 合計 2 つのディスプレイ
  2. ビデオ カードをそれぞれ 1 ディスプレイに出力 = 合計 2 ディスプレイ、
  3. ビデオ カードをそれぞれ 2 つのディスプレイに出力 = 6 つのディスプレイ、
  4. Eyefinity カードを 6 台のディスプレイに出力 (ディスプレイポート上)

これらすべての場合、使用すると、Screen.AllScreens各ディスプレイに個別にアクセスできますか?

また、カードが拡張モードの場合、つまり 2 つのディスプレイが 1 つのカードに接続されているが、それは 1 つの大きなデスクトップ (仕事で使用するもの) にすぎない場合はどうなりますか? コンテンツを 1 つの画面に表示するように指定することはできますか?

4

3 に答える 3

8

はい、Windows は、画面がビデオ アダプター間でどのように分散されているかを気にしません。表示アプレットでの配置方法に応じて、各画面に独自の座標を与えるだけです。Screen.Bounds 内に収まるように位置とサイズを設定することで、ウィンドウを特定のウィンドウに表示できます。

于 2011-03-07T02:03:40.237 に答える
1

拡張デスクトップは画面数に影響しません。

ディスプレイごとに 1 画面を想定するのが安全です。一部のハードウェアでは表示回数が正しく報告されない場合がありますが、これは非常にまれです。このような場合、コントロール パネルでカウントが間違っていることに気付くでしょう。

于 2011-03-07T02:03:22.663 に答える
1

このAllScreensプロパティには、Windows がコントロール パネルに表示するのと同じモニターが一覧表示されます。たとえば、Eyefinity を単一の大きな面 (SLS) として設定している場合、リストには単一のエントリとして表示されます。6 つの個別のモニターとして設定した場合、リストには 6 つのエントリが表示されます。

于 2011-03-07T02:09:04.243 に答える