Foxtable(狐表)用户栏目专家坐堂 → 双击截图保存


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

主题:双击截图保存

帅哥哟,离线,有人找我吗?
yifan3429
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
双击截图保存  发帖心情 Post By: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编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By: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
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By: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

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


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/11 16:13:00 [只看该作者]

路径不正确,
msgbox(projectpath  &"\\Vce\toda$\数据文件\"& f)

如果是共享目录,应该这样:img.save("\\Vce\toda$\数据文件\"& f)

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


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By: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编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/11 16:50:00 [只看该作者]

路径还是不正确,注意路径中的每个目录都必须预先创建好
msgbox("\\Vce\toda$\数据文件\"& f)

或者没有权限写入共享目录

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


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By:2020/11/11 17:10:00 [只看该作者]

单独通过图片的的列功能是可以操作的,共享路劲是对的,后面的是合成的时候创建的

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/11/11 17:12:00 [只看该作者]

试试保存到本机一个简单的路径

img.save("c:\abc.jpg")

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


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By:2020/11/11 19:00:00 [只看该作者]

也是不行,老师

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By: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
……

 回到顶部
总数 14 1 2 下一页