Foxtable(狐表)用户栏目专家坐堂 → 窗口表中的远程文件如何双击直接打开


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

主题:窗口表中的远程文件如何双击直接打开

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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
窗口表中的远程文件如何双击直接打开  发帖心情 Post By:2016/7/22 11:48:00 [只看该作者]

在一个窗口中,直接双击“文件名称及链接”这一列的内容,如果本地有相同的文件(且判断是否为最新,如果是),则直接打开,如果没有的话,下载FTP的文件打开。

也就是说,实现列属性为“文件”的这一列,在这一列中任意一行直接双击,实现鼠标右键中“打开文件(O)”的功能。

下面的语句无法判断本地是否有这个文件。

If e.Col.Name = "文件名称及链接" Then
    If e.Row.IsNull("文件名称及链接") = False Then
        Dim path As String = e.Col.DataCol.DefaultFolder
        If path = Nothing Then
            path = ProjectPath & "RemoteFiles/"
        End If
        path = path & e.Row("文件名称及链接")
        Dim proc As new Process
        proc.File = path
        proc.Start
    End If
End If


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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/22 11:51:00 [只看该作者]

因为这一列我平时是直接锁定的,不让普通用户编辑,所以普通用户在列锁定的情况下,都无法在这一列使用鼠标右键,无法打开文件,只能通过双击的方式打开远程的文件。
[此贴子已经被作者于2016/7/22 11:52:12编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/7/22 11:53:00 [只看该作者]


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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/22 11:54:00 [只看该作者]

谢谢狐爸,不但要判断是否存在,还要比对是否是最新的,如果不是,从FTP下载更新,如果是的话,直接打开本地文件。

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/7/22 11:59:00 [只看该作者]

答案:

http://www.foxtable.com/webhelp/scr/1410.htm

 

 

GetFileTime

返回ftp上指定文件最后一次修改的日期时间。

Dim ftp1 As New FtpClient
ftp1
.Host="196.128.143.28"
ftp1
.Account = "foxuser"
ftp1
.Password = "138238110"
Dim
sz As Date
sz = ftp1.GetFileTime(
"\photo\jz.png")
Output.Show(
"修改时间:" & sz)


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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/22 12:49:00 [只看该作者]

没有命令能直接执行下图中“打开文件(O)”这个功能吗?

要限制普通用户更改这一列的内容,要么限制表格的编辑,如果限制编辑,下图这个菜单出不来,普通用户连文件都无法打开了;如果不限制编辑,能否不显示下图菜单中“插入文件”“插入目录”和“清楚内容”这三个选项?

FileManager只能针对多文件的列。



图片点击可在新窗口打开查看
[此贴子已经被作者于2016/7/22 12:50:09编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/7/22 13:28:00 [只看该作者]

StartEdit事件

 

If e.Col.Name = "xxxx" Then

    e.Cancel = True

End If

 

如果要自己限制,可以自己做窗口实现

 

下载信息  [文件大小:308.0 KB  下载次数:31]
图片点击可在新窗口打开查看点击浏览该文件:文件按钮_例子.table


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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/22 18:48:00 [只看该作者]

 谢谢红袍老师,一下就把问题解决了。

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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/25 16:08:00 [只看该作者]

红袍老师,我的这个表名叫做“项目资料表”,放置文件地址的列叫做“文件名及链接”

我在这个表的属性里面DoubleClick设置为(仅有这一段代码)

If e.Col.Name = "文件名称及链接" Then
    If e.Row.IsNull("文件名称及链接") = False Then
      Dim c As Col = CurrentTable.Cols(CurrentTable.ColSel)
      Dim ftp As FTPClient = c.DataCol.FTPClient
      Dim path As String = ProjectPath & "RemoteFiles\" & FileSys.GetName(CurrentTable.Current(c.Name))
      ftp.Download(CurrentTable.Current(c.Name), path, True)
      Dim proc As new Process
      proc.File = path
      proc.Start
      e.Form.Close
    End If
End If

怎么每次双击这一列的某一行的时候,打开了远程文件的同时,弹出如下提示:

.NET Framework 版本:2.0.50727.5420
Foxtable 版本:2016.6.26.1
错误所在事件:项目资料表,DoubleClick
详细错误信息:
未将对象引用设置到对象的实例。


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


加好友 发短信
等级:三尾狐 帖子:683 积分:4882 威望:0 精华:0 注册:2014/6/15 16:01:00
  发帖心情 Post By:2016/7/25 16:12:00 [只看该作者]

有的时候没有弹出错误提示,但是整个窗口就看不见了。

 回到顶部
总数 23 1 2 3 下一页