C# 桌面上直接绘制
1、名字空间
using System.Runtime.InteropServices;
2、API函数申明
[DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)] public static extern IntPtr GetDesktopWindow();//该函数返回桌面窗口的句柄。 [DllImport("user32.dll", EntryPoint = "GetDCEx", CharSet = CharSet.Auto, ExactSpelling = true)] private static extern IntPtr GetDCEx(IntPtr hWnd, IntPtr hrgnClip, int flags); //获取显示设备上下文环境的句柄
3、绘制代码
private void button4_Click(object sender, EventArgs e) { IntPtr desk = GetDesktopWindow(); IntPtr deskDC = GetDCEx(desk, IntPtr.Zero, 0x403); Graphics g = Graphics.FromHdc(deskDC); g.DrawString("测试", new Font("宋体", 50, FontStyle.Bold), Brushes.Red, new PointF(100, 100)); }