Foxtable(狐表)用户栏目专家坐堂 → 请教:如何对当前表进行截图并保存为图片?


  共有81人关注过本帖树形打印复制链接

主题:请教:如何对当前表进行截图并保存为图片?

帅哥,在线噢!
y2287958
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3717 积分:27317 威望:0 精华:0 注册:2008/8/31 22:44:00
请教:如何对当前表进行截图并保存为图片?  发帖心情 Post By:2019/8/16 17:26:00 [只看该作者]

以下代码可以截取窗口中的控件保存为图片:
Dim trv = e.Form.Controls("Treeview1").BaseControl
Dim point As Point = e.Form.Panel.PointToScreen(trv.Bounds.Location)
Dim myGraphics As Graphics = basemainform.CreateGraphics()
Dim s As new Size(trv.width, trv.height) '截取的大小
Dim bit As New Bitmap(s.Width, s.Height, myGraphics)
Dim memoryGraphics As Graphics = Graphics.FromImage(bit)
memoryGraphics.CopyFromScreen(point.x, point.y, 0, 0, s) '截取的开始位置,坐标(100, 200)
bit.save("d:\test.jpg")
memoryGraphics.dispose
myGraphics.dispose
bit.dispose

请教:我现在想截取当前表并保存图片?如何确定其“截取的开始位置”?
或者说,干脆给俺来个完整的代码,截取当前表全部或部分内容保存为图片。
谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:31530 积分:160690 威望:0 精华:8 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/16 20:56:00 [只看该作者]

利用PointToScreen把控件的左上顶点转换为屏幕坐标即可,从顶点坐标开始取高和宽


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


 回到顶部
帅哥,在线噢!
y2287958
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3717 积分:27317 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2019/8/16 21:01:00 [只看该作者]

谢谢蓝版,我要的不是窗口表,而直接是项目里的表,道理一样吗?

 回到顶部
帅哥,在线噢!
y2287958
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3717 积分:27317 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2019/8/16 21:19:00 [只看该作者]

果真一样,谢谢蓝版,搞定了。

 回到顶部