VB 用treeview1显示指定文件夹内的子文件夹和文件 我想做SWF的播放列表,窗体打开时 treeview1显示“文件
我想做儿童学习的SWF文件的播放列表,窗体打开时treeview1显示“学习包”文件夹中的子文件夹(如“幼儿学习”;“小学学习”等)及其中的文件目录,选择后播放SWF文件...
我想做儿童学习的SWF文件的播放列表,窗体打开时 treeview1显示“学习包”文件夹中的子文件夹(如“幼儿学习”;“小学学习”等)及其中的文件目录,选择后播放SWF文件,回答满意再加20分
展开
2个回答
展开全部
我可以帮你给出解决这个问题的一般步骤,具体实现你可以先试着自己解决,不行咱们再交流。步骤如下:
(1) 首先自定义结构,如:
Private Type swfFile
szPath as String '保存SWF文件的目录
szName as String '保存SWF文件名
End Type
定义自定义结构数组:Dim arr_swfFile() as swfFile
定义保存子目录的数组Dim arr_SubDi() as String
它们都是动态数组,可以用Redim Preserve扩充。
(2) 遍历学习包文件夹下的所有目录和SWF文件。实现方法:用FindFirstFile,FindNextFile和FindClose三个API函数能够做到。将目录结果保存到字符串数组(推荐)或临时文件,将SWF文件结果保存到自定义结构数组中。
(3) 循环添加数组中的内容。用到了TreeView.Nodes.Add这个方法。至于怎么实现父子目录的匹配关系,我的建议是将"学习包"这个节点的Key设置为"MainKey",然后添加子目录节点时只要这样写:TreeView.Nodes.Add "MainKey"(relative),tvwChild(relationship),子目录名称(key),子目录名称(text)。最后SWF文件按所属子目录分类(即要截取自定义结构中的szPath最后一个"\"后的内容)分别添加到相应的子目录中,即TreeView.Nodes.Add 子目录名(relative),tvwChild(relationship),SWF的文件路径(key,为播放时服务),文件名(text)。
(4) 双击播放的实现。在TreeView的Db_Click事件中判断TreeView.SeletedItem.Key,如果Key中不含有"\"字符后,即第三步中的子目录名称则Exit Sub不处理;否则(意味着文件)调用ShellExecute这个API函数播放。当然也可以用自己做的播放器播放。
(1) 首先自定义结构,如:
Private Type swfFile
szPath as String '保存SWF文件的目录
szName as String '保存SWF文件名
End Type
定义自定义结构数组:Dim arr_swfFile() as swfFile
定义保存子目录的数组Dim arr_SubDi() as String
它们都是动态数组,可以用Redim Preserve扩充。
(2) 遍历学习包文件夹下的所有目录和SWF文件。实现方法:用FindFirstFile,FindNextFile和FindClose三个API函数能够做到。将目录结果保存到字符串数组(推荐)或临时文件,将SWF文件结果保存到自定义结构数组中。
(3) 循环添加数组中的内容。用到了TreeView.Nodes.Add这个方法。至于怎么实现父子目录的匹配关系,我的建议是将"学习包"这个节点的Key设置为"MainKey",然后添加子目录节点时只要这样写:TreeView.Nodes.Add "MainKey"(relative),tvwChild(relationship),子目录名称(key),子目录名称(text)。最后SWF文件按所属子目录分类(即要截取自定义结构中的szPath最后一个"\"后的内容)分别添加到相应的子目录中,即TreeView.Nodes.Add 子目录名(relative),tvwChild(relationship),SWF的文件路径(key,为播放时服务),文件名(text)。
(4) 双击播放的实现。在TreeView的Db_Click事件中判断TreeView.SeletedItem.Key,如果Key中不含有"\"字符后,即第三步中的子目录名称则Exit Sub不处理;否则(意味着文件)调用ShellExecute这个API函数播放。当然也可以用自己做的播放器播放。
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询