- 日時: 2009/12/26 23:01
- 名前: 花ちゃん
- ***********************************************************************************
* カテゴリー:[ツリービュー][ファイル][] * * キーワード:全ファイル,サブフォルダー以下,,,, * ***********************************************************************************
元質問:ツリービューにフォルダとファイルを表示す.. - kazuki 2005/11/29-01:31 No.5109
現在ブラウザを作成しているのですが、お気に入りを表示する際ツリービューでやっています。 それでツリービューにお気に入りのフォルダとurlファイルを表示させたいのですが、階層構造にさせ ることができません。プログラムはこちらのサイト様の"指定フォルダー以下の全ファイルを列 挙"の サンプルプログラムを参考にさせていただきました。 下にプログラムを書かせていただきますが、このプログラムを実行するとお気に入りに入っている全 てのファイルがフルパスで表示され、フォルダはまた別で表示されます。 (aaaというフォルダにbbbというurlファイルがあったらaaa\bbbとaaaという感じです)
----------------------------------------------------------------------------------- 投稿されているサンプルでは、そのままでは動作しませんので簡単なサンプルを作って 見ました。 2007/07/22 --- by 花ちゃん --- -----------------------------------------------------------------------------------
'使用する前に、[プロジェクト]→[参照設定]で Microsoft Scripting Runtime の参照に 'チェックを入れておいて下さい。 Option Explicit Private Sub Command1_Click() Dim Fso As FileSystemObject Dim TargetFolder As Folder Dim TargetNode As Node Set Fso = New FileSystemObject TreeView1.Nodes.Clear '指定のフォルダ名を取得 Set TargetFolder = Fso.GetFolder("C:\Program Files\Microsoft Visual Studio") '指定フォルダのフルパスを取得 Set TargetNode = TreeView1.Nodes.Add(, , , TargetFolder) '指定フォルダ内のファイル及びサブフォルダを取得 Call sFolderSearch(TreeView1, TargetNode, TargetFolder) TreeView1.Nodes(1).Expanded = True TreeView1.Nodes(2).Expanded = True Set Fso = Nothing End Sub Private Sub sFolderSearch(ByVal MyTreeView As TreeView, _ ByVal MyNode As Node, ByVal MyFolder As Folder) Dim mySubFolder As Folder Dim myFile As File Dim ChildNode As Node 'サブフォルダーを取得 For Each mySubFolder In MyFolder.SubFolders 'フォルダーをツリー表示 Set ChildNode = MyTreeView.Nodes.Add(MyNode, tvwChild, , mySubFolder.Name) 'サブフォルダーがある場合再帰的に繰り返す Call sFolderSearch(MyTreeView, ChildNode, mySubFolder) Next mySubFolder '現在のフォルダー内のファイルを取得 For Each myFile In MyFolder.Files 'ファイルをツリー表示 MyTreeView.Nodes.Add MyNode, tvwChild, , myFile.Name Next myFile End Sub
---------------------------------------------------------------------------------- 上記の実行結果 (画像をクリックすると元のサイズで見られます。)
|