Foxtable(狐表)用户栏目专家坐堂 → PictureViewer的4个问题


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

主题:PictureViewer的4个问题

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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
PictureViewer的4个问题  发帖心情 Post By:2023/7/30 9:21:00 [显示全部帖子]

1.PictureViewer能否在上传图片之前,对图片压缩,例如下面代码或其他方式压缩
Dim file As String = "d:\test.jpg"
Dim img As image = getImage(file)
Dim bmp As bitmap
If img.width > 800 Then
    If 800 * (img.height / img.width) > 600 Then
        bmp = new bitmap(img, 800*(600/(800*(img.height/img.width))), 600)
    Else
        bmp = new bitmap(img, 800, 800 * (img.height / img.width))
    End If
End If
bmp.save("d:\缩略图.jpg")
bmp.Dispose

2.PictureViewer上传时,下图红框里的按钮,能否取消,即:不允许用户新建目录

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


3.还有其他上传图片到服务器的方式吗?

4.PictureViewer没有事件代码,addfile这样的代码,应该写在哪里?

[此贴子已经被作者于2023/7/30 9:50:25编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/7/31 15:24:00 [显示全部帖子]

FTP客户端,事件代码在哪写?

我是高开2019版,找不到下面的事件在哪

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20230731152257.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/7/31 15:40:00 [显示全部帖子]

我记得,可以用ft创建文件夹的,无奈,实在找不到了

如:BeforeUpload事件中

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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/7/31 15:48:00 [显示全部帖子]

系统自带的ftp客户端,配合上相关事件,挺好用的,所以,不想用ftpclient了图片点击可在新窗口打开查看

我是想问,foxtable代码创建文件夹,而不是手动创建文件夹。

之前,是ft作为服务器端,在本机创建文件夹的。
[此贴子已经被作者于2023/7/31 15:52:39编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/7/31 15:59:00 [显示全部帖子]

是的,就是这个,我搜索creat,竟然没找到

问题1:能否用在BeforeUpload事件中创建文件夹?

问题2:上传之前,在代码里压缩图片,应该也是可以的吧?

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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/7/31 16:29:00 [显示全部帖子]

若用FtpClient,

点下图按钮,查找本机图片,并填入路径,应该怎么写或者看的帮助文件是?


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20230731162535.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/7/31 23:16:00 [显示全部帖子]

用1楼的代码,对准备上传的图片,压缩,保存时,提示错误如下:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2019.11.3.1
错误所在事件:窗口,moShi_huiYuan_tianErWeiMa,Btn_huiYuan_xuanZe,Click
详细错误信息:
GDI+ 中发生一般性错误。
实测发现,是下面文件中,倒数第2、3行,产生的错误,麻烦明天看下
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:压缩上传前的准备.txt



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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/8/1 9:56:00 [显示全部帖子]

修改路径,上传成功了

页面图片:

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20230801094754.png
图片点击可在新窗口打开查看

下面是,按钮的click事件里的代码
Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "图形文件|*.jpg;*.png" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    '压缩图片
    Dim file As String = dlg.FileName '文件路径,如:"d:\test.jpg"
    Dim img As image = getImage(file)
    Dim bmp As bitmap
    If img.height > 500 Then
        bmp = new bitmap(img,500 * (img.width / img.height), 500)
    ElseIf img.width > 500  Then
        bmp = new bitmap(img,500, 500 * (img.height / img.width))
    End If
    '暂停执行直接保存
    '生成文件名,准备下面保存到本机,以备下面准备上传到服务器
    '\,之前的路径
    Dim luJing0 As String = dlg.FileName.Remove(dlg.FileName.LastIndexOf("\"))
    '新的文件名
    Dim name0 As String = Format(Date.Now,"yyyyMMddHHmmss") & Rand.Next(111111,999999) & dlg.FileName.Remove(0,dlg.FileName.LastIndexOf(".")) '新定义的文件名
    '合成后,生成连接路径和新的文件名的字符串
    Dim luJing0_name0 As String = luJing0 & "\" & name0
    '条件已具备,可以在本机保存了
    bmp.save(luJing0_name0)
    bmp.Dispose
    '将路径写入到文本框
    e.Form.Controls("Txt_huiYuan_luJing").Value = "\biPin\" & name0  把服务器端ftp文件夹下的路径放在ft表格中:\bin\20230801093722241665.jpg
    'ftp客服端上传
    Dim ftp1 As New FtpClient
    ftp1.Host="*.*.*.*"
    ftp1.Account = "******"
    ftp1.Password = "******"
    If ftp1.Upload(luJing0_name0,"\bin\" & name0) = True Then
        Messagebox.show("上传完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Else
        Messagebox.show("上传失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
    ’前面,能正常执行
    '希望将上传完成的图片,放到上图的pictureBox中,提示下面的错误
    If CurrentTable.Current IsNot Nothing AndAlso  CurrentTable.Current.IsNull("weiXinErWeiMa") = False Then
        e.Form.Controls("PictureBox_weiXinErWeiMa").Image = CurrentTable.Current("weiXinErWeiMa")  ’这行怎么改?
    End If

提示错误:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2019.11.3.1
错误所在事件:窗口,moShi_huiYuan_tianErWeiMa,Btn_huiYuan_xuanZe,Click
详细错误信息:
方法调用失败,因为“Public Property Image() As System.Drawing.Image”不能用这些参数调用:
    与参数“value”匹配的参数无法从“String”转换为“Image”。
[此贴子已经被作者于2023/8/1 10:03:33编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/8/1 11:30:00 [显示全部帖子]

getimage不成功,但是,也没有错误提示

服务器存储路径:
d:\ftp\biPin\202303\20230801112205666696.jpg

ft单元存储:\biPin\202303\20230801112205666696.jpg

代码如下:
    '将图片放到pictureBox中
    If CurrentTable.Current IsNot Nothing Then
        CurrentTable.Current.DataRow("weiXinErWeiMa") = "\biPin\" & nianJiaJiDu & name0 ’正常执行
        CurrentTable.Current.DataRow("erWeiMaShangChuanShiJian") = Date.Now ’正常执行
        e.Form.Controls("PictureBox_weiXinErWeiMa").Image = GetImage(CurrentTable.Current.DataRow("weiXinErWeiMa")) ’图不显示,但是,图确实已经上传到服务器了
        CurrentTable.Current.DataRow.Save()
    End If
[此贴子已经被作者于2023/8/1 11:31:36编辑过]

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


加好友 发短信
等级:七尾狐 帖子:1553 积分:11009 威望:0 精华:0 注册:2016/9/12 11:18:00
  发帖心情 Post By:2023/8/1 11:47:00 [显示全部帖子]

是服务器路径

换PictureViewer展示

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