Foxtable(狐表)用户栏目专家坐堂 → 图片缩略图填充


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

主题:图片缩略图填充

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/18 14:36:00 [显示全部帖子]

直接单元格绘图本身就很耗资源,不管是原图还是缩略图,效果都好不到哪去。

如果要做那么应该在添加图片的时候就同步生成缩略图保存下来,比如图片:张三.jpg,可以在BeforeAttachFile事件创建一个名称为“缩略图_张三.jpg”的图片
Dim file As String = e.DataCol.DefaultFolder & "\" & e.FileName
Dim img As image = getImage(file)
Dim bmp As new bitmap(img, 100, 100 * (img.height / img.width))
bmp.save(e.DataCol.DefaultFolder & "缩略图_" & e.FileName,img.RawFormat)
bmp.Dispose

drawcell事件
If e.Col.Name = "第一列" Then
    If FileSys.FileExists(e.Col.DataCol.DefaultFolder & "缩略图_" & e.Row("第一列").trim("\")) Then
        e.Graphics.DrawImage(getImage(e.Col.DataCol.DefaultFolder & "缩略图_"  & e.Row("第一列").trim("\")),e.x +1,e.y+1,e.Width - 2,e.Height - 2)
        e.Text = ""
    End If
End If

如果要看大图,到列窗口看即可

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/18 14:49:00 [显示全部帖子]

设置存储路径哪里最后加一个反斜杠"\"

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/18 15:47:00 [显示全部帖子]

到1楼图片列属性里改啊

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/19 8:16:00 [显示全部帖子]

Dim file As String = e.DataCol.DefaultFolder & "\" & e.FileName
msgbox(file) '这里显示什么路径
Dim img As image = getImage(file)
Dim bmp As new bitmap(img, 100, 100 * (img.height / img.width))
bmp.save(e.DataCol.DefaultFolder & "缩略图_" & e.FileName,img.RawFormat)
bmp.Dispose

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/19 10:08:00 [显示全部帖子]

e.filename是文件名,放到目录中间肯定不行啊

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/19 11:18:00 [显示全部帖子]

Dim file As String = e.DataCol.DefaultFolder & dr("季节归属") & "\" & dr("品类") & "\" & dr("款号") & "\" & dr("色称") & "\" & e.FileName
msgbox(file) ‘存在这个路径吗?如果中间任何一个目录不存在,就请先添加对应的目录:http://www.foxtable.com/webhelp/topics/0332.htm

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/22 20:49:00 [显示全部帖子]

提示什么错误?只要路径正确肯定不会有问题的。

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


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/23 12:10:00 [显示全部帖子]

代码放到datacolchanged事件

If e.DataCol.Name = "图片"
    If e.NewValue > "" Then
        Dim file As String = e.DataCol.DefaultFolder  & "\" & e.NewValue
        Dim img As image = getImage(file)
        Dim bmp As new bitmap(img, 100, 100 * (img.height / img.width))
        bmp.save(e.DataCol.DefaultFolder  & "\缩略图_" & e.NewValue,img.RawFormat)
        bmp.Dispose
    End If
End If

 回到顶部