Foxtable(狐表)用户栏目专家坐堂 → 检查剪贴板中复制的文件的文件名是否符合要求?


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

主题:检查剪贴板中复制的文件的文件名是否符合要求?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/1/9 9:19:00 [显示全部帖子]

方法一:你可以拖拽

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=100494&skin=0

 

方法二:你可以循环剪切板的内容,判断文件名,如

 

For Each s As String In Clipboard.GetFileDropList
    output.show(s)
Next


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/9 16:50:00 [显示全部帖子]

If e.Col.Name = "已接收文件" AndAlso e.Control = True AndAlso e.KeyCode = Keys.V Then
    e.Cancel = True '且取消此次按键
    msgbox(1)
    e.Table.FinishEditing
    Dim ls = e.Row.DataRow.Lines(e.Col.name)
    For Each Str_path As String In Clipboard.GetFileDropList
        msgbox(str_path)
        Dim Index1 As Integer
        Dim Str_file As String
        Index1 = Str_path.LastIndexOf("\") '最后一次出现\符号的位置
        Str_file=Str_path.SubString(Index1+1)     '从最后一个\符号后开始截取
        '上传数据
        Dim ftp1 As new ftpclient
        ftp1.host="172.16.5.89"
        ftp1.Account = "administrator"
        ftp1.password = "Admin1234"
        ftp1.RootDir="/各表附件/收发文件管理表/已接收文件/"
        If Str_file.Contains( e.Table.Name & "_" & "ID" & e.Row("ID") & "_")  Then
            If  ftp1.upload(Str_path,Str_file)=True     '上传文件到ftp文件到指定的位置
                msgbox("文件上传成功!")
            End If
        Else
            msgbox("文件名不符合命名规范,请重命名后上传!")
            Return '结束循环
        End If
       
        ls.add(Str_file)
    Next
    e.Row.DataRow.Lines(e.Col.name) = ls
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/9 18:11:00 [显示全部帖子]

以下是引用ycwk在2018/4/9 17:14:00的发言:
和我的代码效果一样啊,不能在这段代码执行完后,自动保存到数据库中,需要我手动点一下保存按钮,咋回事?

 

e.Row.DataRow.Lines(e.Col.name) = ls

e.Row.Save


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/10 11:46:00 [显示全部帖子]

以下是引用ycwk在2018/4/10 11:43:00的发言:
现在复制进去是没有问题了,可是如果我要删除该怎么办 呢?   比如我想按ctrl+x 把ftp上的文件下载到剪贴板中,这个代码要怎么写呀? 

 

1、下载,参考

 

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

 

2、设置粘贴板,参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=116723&skin=0

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/10 12:12:00 [显示全部帖子]

以下是引用ycwk在2018/4/10 12:08:00的发言:
Dim ls As new System.Collections.Specialized.StringCollection
ls.add("d:\lib.rar")
My.Computer.Clipboard.SetFileDropList(ls)


add这个方法只能 复制本地的吗?能否复制ftp上面的? 该方法的说明在哪?

 

先下载,再添加到剪贴板啊。用ftp的download方法啊。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/10 14:45:00 [显示全部帖子]

以下是引用ycwk在2018/4/10 13:08:00的发言:
我知道可以下载后再加载,只是觉得有点麻烦,又要下载,然后还要删除下载的文件, 不能直接复制到粘贴板中吗?

 

不可以直接复制到粘贴板的。

 

或者换一种思路,粘贴板那里复制文字,你粘贴的时候,再根据文字,下载文件,做各种处理。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/11 11:01:00 [显示全部帖子]

请去编写keydown事件

 

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

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/11 12:09:00 [显示全部帖子]

Dim cname As String = e.Table.cols(e.Table.colsel).name
Dim r As Row = e.Table.rows(e.Table.rowsel)
If cname = "已接收文件" AndAlso e.Control = True AndAlso e.KeyCode = Keys.V Then
    e.Cancel = True '且取消此次按键
    'msgbox(1)
    e.Table.FinishEditing
    Dim ls = r.DataRow.Lines(cname)
    For Each Str_path As String In Clipboard.GetFileDropList
        'msgbox(str_path)
        Dim Index1 As Integer
        Dim Str_file As String
        Index1 = Str_path.LastIndexOf("\") '最后一次出现\符号的位置
        Str_file=Str_path.SubString(Index1+1)     '从最后一个\符号后开始截取
        '上传数据
        Dim ftp1 As new ftpclient
        ftp1.host="172.16.5.89"
        ftp1.Account = "administrator"
        ftp1.password = "Admin1234"
        ftp1.RootDir="/各表附件/收发文件管理表/已接收文件/"
        If Str_file.Contains( e.Table.Name & "_" & "ID" & r("ID") & "_")  Then
            If  ftp1.upload(Str_path,Str_file)=True     '上传文件到ftp文件到指定的位置
                msgbox("文件上传成功!")
            End If
        Else
            msgbox("文件名不符合命名规范,请重命名后上传!")
            Return '结束循环
        End If
        ls.add(Str_file)
    Next
    r.DataRow.Lines(cname) = ls
    r.Save
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/11 15:23:00 [显示全部帖子]


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/11 16:13:00 [显示全部帖子]

不生效指什么?你加入msgbox了没有?弹出的各个值是否正确?

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