怎样在桌面上用鼠标绘图 我想在屏幕上用鼠标任意画图,应怎样做? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 原理: 得到桌面的 dc,然后在这个dc上面画图。 ————————————————————————————————————写作,虽然每个人都会查阅辞海,可,不是人人都能写出不朽的篇章的。编程,如是也。 也就是调用api Getdc(桌面句柄)然后 再画图 具体的你查查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);private void button1_Click(object sender, EventArgs e){ IntPtr desk = GetDesktopWindow(); IntPtr deskDC = GetDCEx(desk, IntPtr.Zero, 0x403); Graphics g = Graphics.FromHdc(deskDC); g.FillEllipse(SystemBrushes.ControlText, 0, 0, 100, 100);} 这个就不好说了,要知道鼠标在桌上的移动,可能要用到全局的Hook,这个在.NET不支持的.要处理比较的麻烦的. 原理: 得到桌面的 dc,然后在这个dc上面画图。没有错是这样的,一般把座面的HBITMAP copy下来,其实就是做一个假的窗体,然后在这个窗体上画图.而这个窗体用的背景(图片)是座面的如果硬要在座面画,那么线获得它的hwnd,然后获得Hdc,这样也能话,但是座面就被弄乱了..... 如果做的不是太严格,可以参见这个: 在计算机屏幕上画图 http://blog.csdn.net/hbxtlhx/archive/2004/12/06/206408.aspx Dictionary<string, string> GetEnumerator()为空迷惑 求助!WPF中显示Html格式的控件 在线等,急 如何固定网页的大小 dataGridView获得焦点并处于编辑模式下 求大神帮助!!有关VS中调用SQL中的无参数的存储过程的奇怪问题 如何在程序中让DataGrid失去光标输入焦点? c#如何操作IIS站点的问题! socket编程中,怎样获取网关和nds服务器?? 学C#什么书最好? 如何用窗体软件和网页交互操作(登录或提交数据)? C#中如何由Windows用户的名称获取其SID?
————————————————————————————————————
写作,虽然每个人都会查阅辞海,可,不是人人都能写出不朽的篇章的。编程,如是也。
然后 再画图 具体的你查查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);private void button1_Click(object sender, EventArgs e)
{
IntPtr desk = GetDesktopWindow();
IntPtr deskDC = GetDCEx(desk, IntPtr.Zero, 0x403);
Graphics g = Graphics.FromHdc(deskDC);
g.FillEllipse(SystemBrushes.ControlText, 0, 0, 100, 100);
}
而这个窗体用的背景(图片)是座面的如果硬要在座面画,那么线获得它的hwnd,然后获得Hdc,这样也能话,但是座面就被弄乱了.....
在计算机屏幕上画图
http://blog.csdn.net/hbxtlhx/archive/2004/12/06/206408.aspx