C#实现类似qq的屏幕截图程序 因为近来想写个类似于远程桌面监控的程序,该程序中要用到屏幕捕捉
为实现该程序的一部分功能,做了个小 DEMO
程序很简单,用到的技术也不多,只能实现类似qq 的截图功能(方法虽然很笨) 程序流程如下: 1
截取整个屏幕并保存 2
新开一个全屏窗口,将保存的屏幕作为背景 3
鼠标拖动改变截取范围,右键取消 4
双击截取,保存在粘贴板,全屏窗口关闭 好了,下面的是代码部分 首先新建一个项目 ScreenCutter(VS2005),将窗体名改为MainForm,再新建一个窗体 ScreenBody
添加一个按钮 btnCutter 到ScreenCutter 并添加按钮事件: private void btnCutter_Click(object sender, EventArgs e) { Image img = new Bitmap(Screen
AllScreens[0]
Bounds
Width, Screen
AllScreens[0]
Bounds
Height); Graphics g = Graphics
FromImage(img); g
CopyFromScreen(new Point(0, 0), new Point(0, 0), Screen
AllScreens[0]
Bounds
Size); ScreenBody body = new ScreenBody(); body
BackgroundImage = img; body
Show(); }Screen
AllScreens[0]是获取当前所有设备窗口的第一个,我这里只有一个显示器,当然我就是第一个
利用Graphics 的CopyFromScreen 函数获取当前屏幕
好了,现在按下按钮全屏窗口就会出来了
下面讲全屏窗口 ScreenBody,首先设置