以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- PictureViewer的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=103215) |
||||
-- 作者:天蝉一下 -- 发布时间:2017/7/3 13:20:00 -- PictureViewer的问题 我在项目属性事件的Initialize添加了如下代码: DataTables("作业单位").DataCols("附件").FTPClient.Host="150.168.254.201" DataTables("作业单位").DataCols("附件").FTPClient.Port="*****" DataTables("作业单位").DataCols("附件").FTPClient.Account = "*******" DataTables("作业单位").DataCols("附件").FTPClient.Password = "********" 在窗口1的 AfterLoad 添加了如下代码: Dim lst As WinForm.Table = e.Form.Controls("Table1") Dim piv As WinForm.PictureViewer = e.Form.Controls("PictureViewer1") If lst.Table.Rows.Count>0 Then Dim file1 As String=trim(lst.Table.Current("作业单位编码")) ftp2.Host="150.168.254.201" ftp2.Port="****" ftp2.Account = "*******" ftp2.Password = "**********" piv.FTPclient=ftp2 piv.FTPclient.RootDir=_pathzyba & "/" & file1 If ftp2.Connected = True \'如果FTP没有连接 _pathzyba=ftp2.CurrentDir & "workunit/" DataTables("作业单位").DataCols("附件").SourceFolder=_pathzyba & "/" & file1 Else If ftp2.Connect Then _pathzyba=ftp2.CurrentDir & "workunit/" DataTables("作业单位").DataCols("附件").SourceFolder=_pathzyba & "/" & file1 End If 在datatabels("作业单位")的BeforeAddFile 事件里面写入如下代码: If e.DataCol.name = "附件" Then If e.DataRow.IsNull("作业单位编码") = False If ftp2.Connected Then e.path = ftp2.CurrentDir & "workunit/" & e.DataRow("作业单位编码") End If End If End If 在datatabels("作业单位")的BeforeAttachFile 事件里面写入如下代码: Select Case e.DataCol.Name Case "附件" \'如果在图片列插入文件 If ftp2.Connected Then e.Subfolder = ftp2.CurrentDir & "workunit/" & e.DataRow("作业单位编码")\'将此文件存放在目录名为部门名称的子目录中. End If End Select 上述代码执行后,PictureViewer点击增加可以向远程服务器添加文件了,但是保存后PictureViewer却不显示图片,是空的或者叉叉。查看了一下本地文件,在 RemoteFiles\\workunit\\zydwba00001(作业单位编码)里面有图片,这是怎么回事。怎样能让本地保存的文件能在我指定的目录里面。 还有一个问题是我用的远程数据库,datatabels("作业单位")的列(附件)用sql语句保存时,光保存路径比如"/workunit/zydwba00001/",打开PictureViewer是否能显示出来。PictureViewer已绑定“附件”列
|
||||
-- 作者:有点甜 -- 发布时间:2017/7/3 14:14:00 -- 添加图片后,保存在你附件的路径是什么?贴出来看看
弹出你pictureViewer的RootDir看看,同时打开fpt管理器看看对应的图片存放在哪个路径下了。 |
||||
-- 作者:天蝉一下 -- 发布时间:2017/7/3 14:27:00 -- 您提的问题都在这个附件里了,
|
||||
-- 作者:天蝉一下 -- 发布时间:2017/7/3 14:31:00 -- ftp管理器存放的图片的路径是一样的 |
||||
-- 作者:有点甜 -- 发布时间:2017/7/3 15:33:00 -- 你3楼的图片不是有问题么?
你附件存放的是 /aaa/bbb
而你的文件是 /aaa/bbb/ccc.ico
你在附件列那里存放的值应该是 /aaa/bbb/ccc.ico |
||||
-- 作者:天蝉一线 -- 发布时间:2017/7/3 17:02:00 -- 您的意思是附件列必须保存一个有路经的文件,我不知道理解的对不对? |
||||
-- 作者:有点甜 -- 发布时间:2017/7/3 17:17:00 -- 以下是引用天蝉一线在2017/7/3 17:02:00的发言:
您的意思是附件列必须保存一个有路经的文件,我不知道理解的对不对?
附件列,至少应该保存文件名,如 abc.ico
而其rootdir,可以动态指定。
反正,最后得到的路径(rootdir + 附件列的值 ),是你ftp服务器的路径,那就肯定可以正常看到图片。 |