主 题: [分享]不用API实现截屏/截取当前窗口内容(“抓图”)
作 者: netmicro (麦)
等 级:
信 誉 值: 100
所属社区: .NET技术 C#
问题点数: 0
回复次数: 23
发表时间: 2005-11-27 5:33:50
好像CSDN只有提问的地方,没有分享心得的地方?还是我太白找不到?
-------
以前我在google里找过实现截屏/截Window的方法,搜到了一个用API函数的,我不喜欢用API,于是就没收藏。今天我无意中发现 System.Windows.Forms.SendKey 对象,一下子就知道该怎么弄了
// 模拟按键,将当前窗口图像截取到剪贴板:
SendKeys.SendWait("%{PRTSC}"); // 模拟 Alt+PrtSc,如果要截取整个屏幕,把 Alt (%) 去掉
// 获取剪贴板里的图像:
Bitmap myCapture = (Bitmap)Clipboard.GetDataObject().GetData(DataFormats.Bitmap);
// 要显示图像可以这么做:
this.pictureBox1.Image = myCapture;
// 要保存图像可以这么做:
myCapture.Save(@"C:/myCapture.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
-------
不知道有没有人发过,搜索不管用……
vrace(Warcraft III in 1.20) ( ) 信誉:100 2005-11-27 8:10:11 得分: 0
object you = new B();
Top
crossbowvic(漫步的兔子) ( ) 信誉:100 2005-12-26 21:11:45 得分: 0
哈哈,学习啦,3Q
Top
wmhnq() ( ) 信誉:94 2005-12-26 23:18:17 得分: 0
收藏
Top
wuyazhe(我的宝贝叫阿刺) ( ) 信誉:100 2005-12-27 1:39:50 得分: 0
呵呵。支持楼主分享精神。
Top
xvting(xvting) ( ) 信誉:103 2005-12-27 8:52:05 得分: 0
顶!
Top
lw8122(随风) ( ) 信誉:100 2005-12-27 9:43:27 得分: 0
这个想法很好啊,有创意
Top
jamesfay(狒狒) ( ) 信誉:100 2005-12-27 10:03:11 得分: 0
这方法也不是今天才有,不过lz分享的精神值得鼓励 :-)
Top
desailly(邋遢大王) ( ) 信誉:100 2005-12-27 10:19:44 得分: 0
支持
Top
Macosx() ( ) 信誉:106 2005-12-27 10:34:16 得分: 0
严重支持楼主
Top
flygoldfish(长江支流) ( ) 信誉:97 2005-12-27 11:00:27 得分: 0
不错,WinForm下很多可以巧用系统剪切板的,但WebForm下没有这些优势
Top
asuan(asuan) ( ) 信誉:100 2005-12-27 12:48:47 得分: 0
mark
Top
ztwz(菜虫) ( ) 信誉:100 2005-12-27 13:01:21 得分: 0
mark
Top
min_jie(止戈) ( ) 信誉:100 2005-12-27 13:20:33 得分: 0
好的。。不错。。
Top
jxufewbt(我的目标是5星) ( ) 信誉:105 2006-1-10 20:54:13 得分: 0
支持
Top
richardingding() ( ) 信誉:100 2006-1-10 20:57:50 得分: 0
ding
Top
Sunmast(速马>WPF>WCF>WWF) ( ) 信誉:185 2006-1-10 23:29:33 得分: 0
这个办法是很cool,也可行,就是用户原来粘贴板里面的东西被你干掉了 :-)
不要反感API的调用,CLR本身也是用native代码实现的,FCL的实现也大量使用了P/Invoke
况且,就算哪天.NET实现了真正的跨平台,你的这段代码也没法直接移植
Top
chinadforce() ( ) 信誉:100 2006-1-11 3:09:41 得分: 0
呵呵~
Top
Wangdewind(笑看山水) ( ) 信誉:100 2006-2-15 14:43:01 得分: 0
支持,精神获益,呵呵
Top
hedahong(旋) ( ) 信誉:100 2006-2-15 14:57:07 得分: 0
強,這也想得到!
Top
danseshi(黑蛋) ( ) 信誉:100 2006-03-25 13:55:00 得分: 0
那我不想截取整个屏幕呢?
只截取一部分,就象别的截图软件那样,该怎么做呢???
Top
yf1025(小桥,流水,人家) ( ) 信誉:100 2006-03-25 14:09:00 得分: 0
upupup
Top
a_geng(独孤) ( ) 信誉:98 2006-03-25 14:16:00 得分: 0
Webform中也可以实现剪贴板的操作
Top
chenzhixin(我是农民的儿子) ( ) 信誉:100 2006-03-25 14:21:00 得分: 0
不错,但是不能截取鼠标,要自己画上去
Top
管理 | 关闭窗口
http://ike.126.com