|
本帖最后由 biao197 于 2014-4-29 02:06 编辑
当显示标签不填,即 是否为空 (显示标签) = 真)时,此时执行如下如果分支:
[e]
.版本 2
.如果真 (取文本右边 (欲寻找的目录, 1) ≠ “\”)
欲寻找的目录 = 欲寻找的目录 + “\”
.如果真结束
局_文件名 = 寻找文件 (欲寻找的目录 + 文件类型, )
.判断循环首 (局_文件名 ≠ “”)
.如果真 (是否为空 (加入的列表框) = 假)
.判断开始 (是否带路径 = 真)
加入的列表框.加入项目 (欲寻找的目录 + 局_文件名, )
.默认
加入的列表框.加入项目 (局_文件名, )
.判断结束
.如果真结束
处理事件 ()
局_文件名 = 寻找文件 (, )
.判断循环尾 ()
[/e]
但是这个分支并没有判断搜索关键字。
以下是修改后代码,并加入是否搜索子目录开关
[e]
.版本 2
.子程序 文件_搜索, , 公开, 可以设置显示标签和自动加入到列表框,可以当成枚举文件命令
.参数 欲寻找的目录, 文本型, , 如:C:,表示C盘,记得C字后面两点一定要写,目录不以\结尾会自动添加
.参数 文件类型, 文本型, 可空, 可空:默认为*.*,也就是全部类型。 如填 *.txt只找txt类型的文件
.参数 文件名包含的关键字, 文本型, 可空, 搜索文件名中 包含的关键字。如: 精易论坛.exe 只需要 精易就可以了
.参数 显示标签, 标签, 可空, 用来显示搜索路径的标签
.参数 加入的列表框, 列表框, 可空, 把搜到的加到列表框中
.参数 是否带路径, 逻辑型, 可空, 默认为假; 真=带目录路径,如C:\012.txt; 假=不带,如 012.txt;
.参数 是否搜索子目录, 逻辑型, 可空, 可空,默认为假
.局部变量 局_子目录, 文本型
.局部变量 局_文件名, 文本型
.如果真 (是否为空 (文件类型))
文件类型 = “*.*”
.如果真结束
.如果 (是否为空 (显示标签) = 假)
.如果真 (取文本右边 (欲寻找的目录, 1) ≠ “\”)
欲寻找的目录 = 欲寻找的目录 + “\”
.如果真结束
局_文件名 = 寻找文件 (欲寻找的目录 + 文件类型, )
.判断循环首 (局_文件名 ≠ “”)
显示标签.标题 = 欲寻找的目录 + 局_文件名
显示标签.刷新显示 ()
.如果真 (是否为空 (加入的列表框) = 假)
.判断开始 (是否为空 (文件名包含的关键字))
.判断开始 (是否带路径 = 真)
加入的列表框.加入项目 (欲寻找的目录 + 局_文件名, )
.默认
加入的列表框.加入项目 (局_文件名, )
.判断结束
.判断 (寻找文本 (局_文件名, 文件名包含的关键字, , 假) ≠ -1)
.判断开始 (是否带路径 = 真)
加入的列表框.加入项目 (欲寻找的目录 + 局_文件名, )
.默认
加入的列表框.加入项目 (局_文件名, )
.判断结束
.默认
.判断结束
.如果真结束
处理事件 ()
局_文件名 = 寻找文件 (, )
.判断循环尾 ()
.如果真 (是否搜索子目录) ' ’添加部分,是否搜索子目录
局_子目录 = 寻找文件 (欲寻找的目录 + “*.*”, #子目录)
.判断循环首 (局_子目录 ≠ “”)
.如果真 (取文本左边 (局_子目录, 1) ≠ “.”)
处理事件 ()
.如果 (是否为空 (加入的列表框) = 假)
文件_搜索 (欲寻找的目录 + 局_子目录 + “\”, 文件类型, 文件名包含的关键字, 显示标签, 加入的列表框, 是否带路径, 是否搜索子目录)
.否则
文件_搜索 (欲寻找的目录 + 局_子目录 + “\”, 文件类型, 文件名包含的关键字, 显示标签, , 是否带路径, 是否搜索子目录)
.如果结束
.如果真结束
局_子目录 = 寻找文件 (, #子目录)
.判断循环尾 ()
.如果真结束
.否则
.如果真 (取文本右边 (欲寻找的目录, 1) ≠ “\”)
欲寻找的目录 = 欲寻找的目录 + “\”
.如果真结束
局_文件名 = 寻找文件 (欲寻找的目录 + 文件类型, )
.判断循环首 (局_文件名 ≠ “”)
.如果真 (是否为空 (加入的列表框) = 假)
.判断开始 (是否为空 (文件名包含的关键字)) ' 添加部分,当显示标签为空时判断关键字
.判断开始 (是否带路径 = 真)
加入的列表框.加入项目 (欲寻找的目录 + 局_文件名, )
.默认
加入的列表框.加入项目 (局_文件名, )
.判断结束
.判断 (寻找文本 (局_文件名, 文件名包含的关键字, , 假) ≠ -1) ' 添加部分,当显示标签为空时判断关键字
.判断开始 (是否带路径 = 真)
加入的列表框.加入项目 (欲寻找的目录 + 局_文件名, )
.默认
加入的列表框.加入项目 (局_文件名, )
.判断结束
.默认
.判断结束
.如果真结束
处理事件 ()
局_文件名 = 寻找文件 (, )
.判断循环尾 ()
.如果真 (是否搜索子目录) ' 添加部分,是否搜索子目录
局_子目录 = 寻找文件 (欲寻找的目录 + “*.*”, #子目录)
.判断循环首 (局_子目录 ≠ “”)
.如果真 (取文本左边 (局_子目录, 1) ≠ “.”)
处理事件 ()
.如果 (是否为空 (加入的列表框) = 假)
文件_搜索 (欲寻找的目录 + 局_子目录 + “\”, 文件类型, 文件名包含的关键字, , 加入的列表框, 是否带路径, 是否搜索子目录)
.否则
文件_搜索 (欲寻找的目录 + 局_子目录 + “\”, 文件类型, 文件名包含的关键字, , , 是否带路径, 是否搜索子目录)
.如果结束
.如果真结束
局_子目录 = 寻找文件 (, #子目录)
.判断循环尾 ()
.如果真结束
[/e]
哎,,自动忽略发的E源码吧,发了三次,显示都错乱,贴E代码功能有问题啊
截个图:
|
评分
-
参与人数 1 | 好评 +1 |
精币 +2 |
收起
理由
|
冰点
| + 1 |
+ 2 |
已记录,感谢提醒,记录帖:http://bbs.125.la/thread-13 |
查看全部评分
|