Foxtable(狐表)用户栏目专家坐堂 → 关于预览图片问题


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

主题:关于预览图片问题

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


加好友 发短信
等级:八尾狐 帖子:2007 积分:12794 威望:0 精华:0 注册:2017/4/3 15:01:00
关于预览图片问题  发帖心情 Post By:2020/9/10 18:04:00 [只看该作者]

在 TimerTick 事件中写了如下代码,运行后假如数据行没有图片时会报错,怎么处理


Dim wjjmc As String
Dim t As  Table = Tables("充值凭证表")
wjjmc =Format(T.Current("充值日期"),"yyy年MM月dd日") & "【" & T.Current("起始号") & "至" & T.Current("终止号") & "】"
Dim dlg As New FolderBrowserDialog
Dim czkh As DataRow
Dim shID As String = e.Form.Controls("czpzIDTextBox").value
Dim dr1 As DataRow = DataTables("充值凭证表").Find("充值凭证ID= '" & shID & "'" )
Dim str As String = dr1("充值凭证原始名称")
For Each file As String In FileSys.GetFiles(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" )
    Dim name As String = FileSys.GetName(file)
    If name.Contains(str) Then
        Dim ls = dr1.Lines("充值凭证")
        If ls.contains(name) = False Then
            ls.add(name)
            dr1.lines("充值凭证") = ls
            DataTables("充值凭证表").Save
        End If
    End If
Next
DataTables("充值凭证表").DataCols("充值凭证").DefaultFolder =ProjectPath & "照片\充值凭证截图\" & wjjmc & "\"




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

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

[此贴子已经被作者于2020/9/10 19:39:24编辑过]

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


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

……
Dim dr1 As DataRow = DataTables("充值凭证表").Find("充值凭证ID= '" & shID & "'" )
Dim str As String = dr1("充值凭证原始名称")
dim lst as list(of string)
if dr1.isnull("充值凭证") then
lst = new list(of string)
else
lst =dr1.Lines("充值凭证")
end if
For Each file As String In FileSys.GetFiles(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" )
    Dim name As String = FileSys.GetName(file)
    If name.Contains(str) andalso lst.contains(name) = False  Then
        lst.add(name)
    End If
Next
dr1.lines("充值凭证") = lst
DataTables("充值凭证表").Save
……

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


加好友 发短信
等级:八尾狐 帖子:2007 积分:12794 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/9/10 21:01:00 [只看该作者]

蓝老师照您修改后还是错误

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

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

代码如下

Dim wjjmc As String
Dim t As  Table = Tables("充值凭证表")
wjjmc =Format(T.Current("充值日期"),"yyy年MM月dd日") & "【" & T.Current("起始号") & "至" & T.Current("终止号") & "】"
Dim dlg As New FolderBrowserDialog
Dim czkh As DataRow
Dim shID As String = e.Form.Controls("czpzIDTextBox").value
Dim dr1 As DataRow = DataTables("充值凭证表").Find("充值凭证ID= '" & shID & "'" )
Dim str As String = dr1("充值凭证原始名称")
Dim lst As List(of String)
If dr1.isnull("充值凭证") Then
lst = new List(of String)
Else
lst =dr1.Lines("充值凭证")
End If
For Each file As String In FileSys.GetFiles(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" )
    Dim name As String = FileSys.GetName(file)
If name.Contains(str) AndAlso lst.contains(name) = False  Then
        lst.add(name)
    End If
Next
dr1.lines("充值凭证") = lst
DataTables("充值凭证表").Save
DataTables("充值凭证表").DataCols("充值凭证").DefaultFolder =ProjectPath & "照片\充值凭证截图\" & wjjmc & "\"
[此贴子已经被作者于2020/9/10 21:12:50编辑过]

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


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

提示的路径不存在

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


加好友 发短信
等级:八尾狐 帖子:2007 积分:12794 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/9/10 21:52:00 [只看该作者]

蓝老师是没照片,没照片这个文件夹肯定也不存在的,如果有照片行没事,只要某一行无照片就会出现错误,并且关闭了程序出现死循环
[此贴子已经被作者于2020/9/10 21:54:44编辑过]

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


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

路径不存在,先判断一下http://www.foxtable.com/webhelp/topics/0334.htm

For Each file As String In FileSys.GetFiles(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" )

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


加好友 发短信
等级:八尾狐 帖子:2007 积分:12794 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/9/10 22:16:00 [只看该作者]

Dim wjjmc As String
Dim t As  Table = Tables("充值凭证表")
wjjmc =Format(T.Current("充值日期"),"yyy年MM月dd日") & "【" & T.Current("起始号") & "至" & T.Current("终止号") & "】"
Dim dlg As New FolderBrowserDialog
Dim czkh As DataRow
Dim shID As String = e.Form.Controls("czpzIDTextBox").value
Dim dr1 As DataRow = DataTables("充值凭证表").Find("充值凭证ID= '" & shID & "'" )
Dim str As String = dr1("充值凭证原始名称")
Dim lst As List(of String)
If dr1.isnull("充值凭证") Then
    lst = new List(of String)
Else
    lst =dr1.Lines("充值凭证")
End If
If FileSys.DirectoryExists(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" ) Then '如果目录C:\MyFolder存在
    For Each file As String In FileSys.GetFiles(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" )
        Dim name As String = FileSys.GetName(file)
        If name.Contains(str) AndAlso lst.contains(name) = False  Then
            lst.add(name)
        End If
    Next
    dr1.lines("充值凭证") = lst
    DataTables("充值凭证表").Save
    DataTables("充值凭证表").DataCols("充值凭证").DefaultFolder =ProjectPath & "照片\充值凭证截图\" & wjjmc & "\"
End If


这段代码放到计时器上运行没发现错误,怎么放到CurrentChanged事件中就出现未实例化呢?

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


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

没有判断Current是否空值

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


加好友 发短信
等级:八尾狐 帖子:2007 积分:12794 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/9/11 7:37:00 [只看该作者]

If Tables("充值凭证表").current("充值凭证") Is Nothing  Then
    Dim wjjmc As String
    Dim t As  Table = Tables("充值凭证表")
    wjjmc =Format(T.Current("充值日期"),"yyy年MM月dd日") & "【" & T.Current("起始号") & "至" & T.Current("终止号") & "】"
    Dim dlg As New FolderBrowserDialog
    Dim czkh As DataRow
    Dim shID As String = e.Form.Controls("czpzIDTextBox").value
    Dim dr1 As DataRow = DataTables("充值凭证表").Find("充值凭证ID= '" & shID & "'" )
    Dim str As String = dr1("充值凭证原始名称")
    Dim lst As List(of String)
    If dr1.isnull("充值凭证") Then
        lst = new List(of String)
    Else
        lst =dr1.Lines("充值凭证")
    End If
    If FileSys.DirectoryExists(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" ) Then '如果目录C:\MyFolder存在
        For Each file As String In FileSys.GetFiles(ProjectPath & "照片\充值凭证截图\" & wjjmc & "\" )
            Dim name As String = FileSys.GetName(file)
            If name.Contains(str) AndAlso lst.contains(name) = False  Then
                lst.add(name)
            End If
        Next
        dr1.lines("充值凭证") = lst
        DataTables("充值凭证表").Save
        DataTables("充值凭证表").DataCols("充值凭证").DefaultFolder =ProjectPath & "照片\值凭证截图\" & wjjmc & "\"
    End If
End If

启动后只能加载一条图片,其他有图片也不显示

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


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

http://www.foxtable.com/webhelp/topics/0445.htm

自己核对单元格的文件名称是否正确和文件是否存在

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