Foxtable(狐表)用户栏目专家坐堂 → 如何在组合框里获得文件夹下的文件名


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

主题:如何在组合框里获得文件夹下的文件名

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


加好友 发短信
等级:二尾狐 帖子:555 积分:5037 威望:0 精华:0 注册:2012/2/11 13:27:00
如何在组合框里获得文件夹下的文件名  发帖心情 Post By:2015/7/1 15:52:00 [只看该作者]

1、在软件系统默认的路径下有个文件夹“个人信息”,文件夹下文件名为:

              (文件名分两种:在职信息、离退休信息,扩展名.xy为自定义的)

 

      刘大同在职信息.xy

      陈华在职信息.xy

      张强离退休信息.xy

      李芳在职信息.xy

      杨华在职信息.xy

      小红离退休信息.xy

      liuhai在职信息.xy

 

2、在窗体中建两个组合框ComboBox:在职人员、离退休人员

    想在“在职人员”中 出现列表为:                  “离退休人员”中,出现列表为:

                                             liuhua

                                              陈华                                            小红

                                              李芳                                             张强

                                              刘大同

                                              杨华

 

请教,如果写事件代码?(个人觉得很难,没信心研究了,请教高手!)

 

[此贴子已经被作者于2015/7/1 15:53:26编辑过]

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


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

1、

 

Dim str As String = ""
For Each f As String In FileSys.GetFiles("d:\")
    str &= FileSys.GetName(f) & "|"
Next

msgbox(str.Trim("|"))


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


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

2、

 

Dim str As String = ""
Dim zz As String = ""
Dim lt As String = ""
For Each f As String In FileSys.GetFiles("d:\")
    If f.Contains("离退") Then
        lt &= FileSys.GetName(f) & "|"
    ElseIf f.Contains("在职") Then
        zz &= FileSys.GetName(f) & "|"
    End If
    str &= FileSys.GetName(f) & "|"
Next

msgbox(str.Trim("|"))
msgbox(zz.Trim("|"))
msgbox(lt.Trim("|"))


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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12999 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2015/7/1 16:07:00 [只看该作者]


Dim fls as string  = ProjectPath & "个人信息\"

Dim zzs as string

Dim Lts as string

For Each File As string In FileSys.GetFiles(fls)

  if File.Contains("在职信息.xy") Then

    zzs =zzs & File.split("在")(0) & "|" 

  Elseif File.Contains("离退休信息.xy") Then

    Lts =Lts File.split("")(0) & "|" 

  End if
Next

zzs =zzs.trim("|")  '在職列表

Lts =Lts.trim("|")   '離退休列表



[此贴子已经被作者于2015/7/1 16:07:40编辑过]

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


加好友 发短信
等级:二尾狐 帖子:555 积分:5037 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/7/2 10:33:00 [只看该作者]

请教“don”,我的组合框是这样定义的:

 

Dim xingming As WinForm.ComboBox = e.Form.Controls("姓名")

xingming.ComboList =

 

这个后面怎么写呢?写成 xingming.ComboList = zzc 又不能,请指教!


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


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

Dim str As String = ""
Dim zz As String = ""
Dim lt As String = ""
For Each f As String In FileSys.GetFiles("d:\")
    If f.Contains("离退") Then
        lt &= FileSys.GetName(f).Replace("离退休信息.xy", "") & "|"
    ElseIf f.Contains("在职") Then
        zz &= FileSys.GetName(f).Replace("在职信息.xy", "") & "|"
    End If
    str &= FileSys.GetName(f) & "|"
Next

msgbox(str.Trim("|"))
msgbox(zz.Trim("|"))
msgbox(lt.Trim("|"))

 

Dim xingming As WinForm.ComboBox = e.Form.Controls("姓名")
xingming.ComboList = zz


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


加好友 发短信
等级:二尾狐 帖子:555 积分:5037 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/7/2 16:11:00 [只看该作者]

特别谢谢,有用了,我整理的一下,最后的代码如下:

 

'----- 设置 选择姓名 控件的下拉菜单------
Dim str As String = ""
Dim zz As String = ""
Dim lt As String = ""
For Each f As String In FileSys.GetFiles( ProjectPath & "\上报接受\" )
    If f.Contains("离退") Then
        lt &= FileSys.GetName(f).Replace("离退信息.xh", "") & "|"
    ElseIf f.Contains("在职") Then
        zz &= FileSys.GetName(f).Replace("在职信息.xh", "") & "|"
    End If
    str &= FileSys.GetName(f) & "|"
Next
'msgbox(str.Trim("|"))
'msgbox(zz.Trim("|"))
'msgbox(lt.Trim("|"))

Dim zjxingming As WinForm.ComboBox = e.Form.Controls("再选择增加人员姓名")
zjxingming.ComboList = zz
'------------------------------------------------

 

 

 

如果能把获得的名字排序就更好了。


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


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

 排序的规则是什么?

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


加好友 发短信
等级:二尾狐 帖子:555 积分:5037 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/7/2 16:32:00 [只看该作者]

我想是按姓名的拼音排序啊!不知能否可行?


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


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

Dim str As new List(Of String)
Dim zz As new List(Of String)
Dim lt As new List(Of String)

For Each f As String In FileSys.GetFiles("D:\")
    If f.Contains("离退") Then
        lt.add(FileSys.GetName(f).Replace("离退信息.xh", ""))
    ElseIf f.Contains("在职") Then
        zz.add( FileSys.GetName(f).Replace("在职信息.xh", ""))
    End If
    str.Add(FileSys.GetName(f))
Next
Dim azz() As String = zz.ToArray
Array.Sort(azz)
Dim szz As String = String.Join("|", azz)
msgbox(szz)
Dim alt() As String = lt.ToArray
Array.Sort(alt)
Dim slt As String = String.Join("|", alt)
msgbox(slt)
Dim astr() As String = str.ToArray
Array.Sort(str.ToArray)
Dim sstr As String = String.Join("|", astr)
msgbox(sstr )


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