以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 双击截图保存 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=158210) |
-- 作者:yifan3429 -- 发布时间:2020/11/11 15:33:00 -- 双击截图保存 启动截图功能,勾选截图软件的勾选确认后,将截图按照路劲保存到图片列 (路径如:基建\\T1\\A\\墙面系统\\双面9厘板木龙骨隔墙(2020-11-11-00-00).jpg)
If e.Col.name = "图片" Then Dim dr As DataRow = e.Row.DataRow If dr.IsNull ("区域名称") Or Dr.IsNull("立面编号") Or Dr.IsNull("类别") Or Dr.IsNull("施工项目") Then MessageBox.show("带 * 为必填","提示") e.cancel = True Else baseMainForm.WindowState= system.Windows.forms.FormWindowState.Minimized ClipBoard.Clear Dim proc As new Process proc.File = ApplicationPath & "/capture.exe" proc.WaitForClose = True proc.Start() 接下来这个如何保存截图内容 End If End If [此贴子已经被作者于2020/11/11 15:49:01编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/11/11 15:47:00 -- …… proc.WaitForClose = True proc.Start() If ClipBoard.ContainsImage Then Dim img As Image img = ClipBoard.GetImage() Dim f As String = e.Row("区域名称") & "\\" & e.Row("立面编号") &"\\" & e.Row("类别")&"\\" & e.Row("施工项目")&".png" img.save(projectpath & "Attachments\\" & f) e.row("图片") = f End If End If End If |
-- 作者:yifan3429 -- 发布时间:2020/11/11 16:11:00 -- .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.5.29.8 错误所在事件:基建,DoubleClick 详细错误信息: GDI+ 中发生一般性错误。 If e.Col.name = "图片" Then Dim dr As DataRow = e.Row.DataRow If dr.IsNull ("区域名称") Or Dr.IsNull("立面编号") Or Dr.IsNull("类别") Or Dr.IsNull("施工项目") Then MessageBox.show("带 * 为必填","提示") e.cancel = True Else baseMainForm.WindowState= system.Windows.forms.FormWindowState.Minimized ClipBoard.Clear Dim proc As new Process proc.File = ApplicationPath & "/capture.exe" proc.WaitForClose = True proc.Start() If ClipBoard.ContainsImage Then Dim img As Image img = ClipBoard.GetImage() Dim f As String = e.Row("区域名称") & "\\" & e.Row("立面编号") &"\\" & e.Row("类别")&"\\" & e.Row("施工项目")&".png" img.save(projectpath &"\\\\Vce\\toda$\\数据文件\\"& f) e.Row("图片") = f End If End If End If |
-- 作者:有点蓝 -- 发布时间:2020/11/11 16:13:00 -- 路径不正确, msgbox(projectpath &"\\\\Vce\\toda$\\数据文件\\"& f) 如果是共享目录,应该这样:img.save("\\\\Vce\\toda$\\数据文件\\"& f)
|
-- 作者:yifan3429 -- 发布时间:2020/11/11 16:40:00 -- If ClipBoard.ContainsImage Then Dim img As Image img = ClipBoard.GetImage() Dim f As String = "基建" & "\\" & dr("区域名称") & "\\" & dr("立面编号") & "\\" & dr("类别") img.save("\\\\Vce\\toda$\\数据文件\\"& f) e.Row("图片") = f End If 还是不行,同样错误
[此贴子已经被作者于2020/11/11 16:40:22编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/11/11 16:50:00 -- 路径还是不正确,注意路径中的每个目录都必须预先创建好 msgbox("\\\\Vce\\toda$\\数据文件\\"& f) 或者没有权限写入共享目录
|
-- 作者:yifan3429 -- 发布时间:2020/11/11 17:10:00 -- 单独通过图片的的列功能是可以操作的,共享路劲是对的,后面的是合成的时候创建的 |
-- 作者:有点蓝 -- 发布时间:2020/11/11 17:12:00 -- 试试保存到本机一个简单的路径 img.save("c:\\abc.jpg")
|
-- 作者:yifan3429 -- 发布时间:2020/11/11 19:00:00 -- 也是不行,老师 |
-- 作者:有点蓝 -- 发布时间:2020/11/12 9:17:00 -- 我在命令窗口这样测试没有问题 baseMainForm.WindowState= system.Windows.forms.FormWindowState.Minimized ClipBoard.Clear Dim proc As new Process proc.File = ApplicationPath & "/capture.exe" proc.WaitForClose = True proc.Start() If ClipBoard.ContainsImage Then Dim img As Image img = ClipBoard.GetImage() img.save("c:\\abc.jpg") End If e.cancel = True换个位置试试,如: If e.Col.name = "图片" Then e.cancel = True Dim dr As DataRow = e.Row.DataRow If dr.IsNull ("区域名称") Or Dr.IsNull("立面编号") Or Dr.IsNull("类别") Or Dr.IsNull("施工项目") Then MessageBox.show("带 * 为必填","提示") Else baseMainForm.WindowState= system.Windows.forms.FormWindowState.Minimized ClipBoard.Clear …… |