スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Graphicsオブジェクトによってスクリーン全体に自由に描画する方法

Win32 API を使って、スクリーン全体に描画するには、以下のようにすれば良いのだが、
C#.NET(やVB.NET)のGraphicsオブジェクトで簡単に実行できないようだ。

*** Win32 API の例 ***

HDC hDC = GetDC(NULL);
MoveTo(100, 100);
LineTo(800, 800);
ReleaseDC(NULL, hDC);


C#.NET(やVB.NET)で、スクリーン全体に自由に描画するためには、次のようにする。

*** C#.NETのGraphicsオブジェクトでの例 ***

using System.Runtime.InteropServices;

[DllImport("user32")]
static extern IntPtr GetDC(IntPtr hWnd);
[DllImport("user32")]
static extern int ReleaseDC(IntPtr hWnd, IntPtr hDC);

IntPtr hDC = GetDC((IntPtr)0);
using (Graphics g = Graphics.FromHdc(hDC)) {
using (Pen pen = new Pen(Color.Blue, 5)) {
g.DrawLine(pen, new Point(100, 100), new Point(800, 800));
}
}
ReleaseDC((IntPtr)0, hDC);


スポンサーサイト
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。