2017-11-20 22 views
0

この質問の解決方法は、hereです。しかし、この質問の解決策は1つの画面でしか機能しません。同じ図面を複数の画面に印刷したいどのように私はそれを達成するのですか?ここで私を助けてください。フォームなしで複数の画面に描画

は、リンクされたソリューションは、GDI +のための描画領域を取得するためにディスプレイコンテキストハンドル(HDC)を使用して説明し、あなたに

+0

モニターごとにDCを使用して画像を2回描画する必要があります。 – keith

+0

@keith別のモニターを取得する方法。私はこれをしました グラフィックg = Graphics.FromHwnd(IntPtr.Zero); g.DrawRectangle(p、新しいRectangle(Screen.AllScreens [i] .Bounds.X、Screen.AllScreens [i] .Bounds.Y、Screen.AllScreens [i] .Bounds.Width、Screen.AllScreens [i])。 Bounds.Height)); しかし、これは同じ画面で2回だけ描画します – metadata

答えて

0

ありがとうございます。 hdcは、通常、ウィンドウの描画領域またはプライマリディスプレイです。コメントに記載されているkeithのように、第2ディスプレイのHDCを取得し、そのHDCを引き出す必要があります。ここで

https://msdn.microsoft.com/en-us/library/dd144947%28v=vs.85%29.aspx

C++で同様の結果をしようとしている別の問題です。概念はほとんど同じでなければなりません。 How to draw over second monitor with GDIPLUS

+0

これは私がやっていることですが、それはまだ同じ画面に2回描いています。 IntPtr WindowDC = GetWindowDC(IntPtr.Zero); (グラフィックスgrfx = Graphics.FromHdc(WindowDC)) { for(int i = 0; i metadata

+0

私はあなたがEnumDisplayMonitorsを使用しなければならないプライマリモニタ以上のものを得るためには、それが欠けていると思います。詳細はEnumDisplayMonitorsを使用する方法を参照してください。https://msdn.microsoft.com/en-us/library/dd162610(v=vs.85).aspx –

関連する問題