以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]扫描后的图片,点击单元查看不到图片,求助!!!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=169302)

--  作者:hrw68529
--  发布时间:2021/6/11 10:04:00
--  [求助]扫描后的图片,点击单元查看不到图片,求助!!!
问题如下:
有一列标题为“退役电子档案”为图片列,利用扫描仪扫描的文件存放在这一列,根据帮助里说明,我进行了以下设置:

AfterOpenProject事件设置代码:

If FileSys.DirectoryExists(ProjectPath & "photo")=False Then  \'如果目录不存在

    FileSys.CreateDirectory(ProjectPath & "photo") \'则建立

End If

With FileWatcher

    .Path = ProjectPath & "photo"

    .Delay = 1000

    .Enabled = True

End With


然后将FileCreated事件代码设置为:

If FileSys.DirectoryExists(ProjectPath & "自主就业")=False Then  \'如果目录不存在

    FileSys.CreateDirectory(ProjectPath & "自主就业") \'则建立

End If

Dim Index As Integer = CurrentTable.Current("退役电子档案").split(vbcrlf).length

CurrentTable.Current("退役电子档案")= CurrentTable.Current("退役年度") & "-" & CurrentTable.Current("姓名") & Index & ".jpg" & vbcrlf

FileSys.CopyFile(e.FullPath, ProjectPath & "自主就业\\" & CurrentTable.Current("退役年度") & "-" & CurrentTable.Current("姓名") & Index & ".jpg",True)

扫描文件都没有问题,也存在了软件目录下的“自主就业”文件夹内,但点击“退役电子档案”单元格时,找不到图片,怎么解决,谢谢专家。如下图:

此主题相关图片如下:截图00.jpg
按此在新窗口浏览图片


--  作者:有点蓝
--  发布时间:2021/6/11 10:11:00
--  
图片列是怎么设置的?有没有指定存放目录?http://www.foxtable.com/webhelp/topics/0088.htm
--  作者:hrw68529
--  发布时间:2021/6/11 10:13:00
--  
不想让他存放在默认的目录下,想存放在 ProjectPath & "自主就业\\" & CurrentTable.Current("退役年度"& "-" & CurrentTable.Current("姓名"& Index & ".jpg",True)这个目录下,怎么设置?谢谢
--  作者:有点蓝
--  发布时间:2021/6/11 10:15:00
--  
那么图片单元格就要输入完整路径

CurrentTable.Current("退役电子档案")= ProjectPath & "自主就业\\" & CurrentTable.Current("退役年度"& "-" & CurrentTable.Current("姓名"& Index & ".jpg"

--  作者:hrw68529
--  发布时间:2021/6/11 10:31:00
--  
有点蓝老师,改了之后,可以是可以了,但扫描多张,只显示最后一张,当点击单元格查看图片时,怎么能看到多张图片?谢谢
[此贴子已经被作者于2021/6/11 10:30:56编辑过]

--  作者:有点蓝
--  发布时间:2021/6/11 10:40:00
--  
If CurrentTable.Current.isnull("退役电子档案")
    CurrentTable.Current("退役电子档案") = ProjectPath & "自主就业\\" & CurrentTable.Current("退役年度") & "-" & CurrentTable.Current("姓名") & Index & ".jpg"
Else
    CurrentTable.Current("退役电子档案") = CurrentTable.Current("退役电子档案") & vbcrlf &  ProjectPath & "自主就业\\" & CurrentTable.Current("退役年度") & "-" & CurrentTable.Current("姓名") & Index & ".jpg"
End If

--  作者:hrw68529
--  发布时间:2021/6/11 10:51:00
--  
有点蓝老师,显示的是多张,但是同一张,不好意思,打扰了。截图如下:
图片点击可在新窗口打开查看此主题相关图片如下:截图03.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2021/6/11 11:01:00
--  
保存文件的时候同名了吧

Dim Index As Integer = CurrentTable.Current.datarow.lines("退役电子档案").count + 1

使用索引可能重复的,比如有3个文件,删除了第一个,然后再加一个,就会有2个索引为2的文件了......建议使用日期毫秒值区分

CurrentTable.Current("退役电子档案") = ProjectPath & "自主就业\\" & CurrentTable.Current("退役年度") & "-" & CurrentTable.Current("姓名") & format(date.now,"yyyyMMddHHmmssfffff") & Index & ".jpg"

--  作者:hrw68529
--  发布时间:2021/6/11 11:09:00
--  
加入上述代码后,出现未知编译错误,
--  作者:有点蓝
--  发布时间:2021/6/11 11:13:00
--  
改后的完整代码发上来呀

另外项目名称,项目所在的路径不能有括号等特殊字符,否则无法显示正确的错误提示,只能显示未知编译错误