VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/11/29(Tue) 01:31
投稿者kazuki
Eメール
URL
タイトルツリービューにフォルダとファイルを表示するには?

現在ブラウザを作成しているのですが、お気に入りを表示する際ツリービューでやっています。
それでツリービューにお気に入りのフォルダとurlファイルを表示させたいのですが、階層構造にさせ
ることができません。プログラムはこちらのサイト様の"指定フォルダー以下の全ファイルを列
挙"の
サンプルプログラムを参考にさせていただきました。
下にプログラムを書かせていただきますが、このプログラムを実行するとお気に入りに入っている全
てのファイルがフルパスで表示され、フォルダはまた別で表示されます。
(aaaというフォルダにbbbというurlファイルがあったらaaa\bbbとaaaという感じです)

開発ソフトはVB6.0でXPHomeをで作っています。
よろしくお願いします。

Dim FolderNum As Integer 'フォルダ用のキー
Dim FileNum As Integer 'なんらかのフォルダに入ってるURLのキー
Dim FavoriteFileNum As Integer 'お気に入りに直に入ってるURL
Dim Flg As Boolean 'フォルダを経由しているかどうか

Private Sub Command1_Click()
    Dim Fso As New FileSystemObject
    FavoriteBox.Nodes.Clear
    '指定のフォルダを指定
    Call sFolderSearch2(Fso.GetFolder(CreateObject("WScript.Shell").SpecialFolder
s
("Favorites")), False)
    Set Fso = Nothing
End Sub

Private Sub sFolderSearch2(ByVal myFolder As Object, Flg)
    Dim mySubFolder As Folder
    Dim myFile      As File
    Dim Node1 As Node
    
    '現在のフォルダ内のファイルを取得
    For Each myFile In myFolder.Files
            If Flg = False Then
                FavoriteFileNum = FavoriteFileNum + 1
                Set Node1 = FavoriteBox.Nodes.Add(, , "A" & FavoriteFileNum,
myFile)
            Else
                FileNum = FileNum + 1
                Set Node1 = FavoriteBox.Nodes.Add("B" & FolderNum, Child, &qu
ot;C" & FileNum,
myFile)
            End If
    Next
    
    With myFolder
        'サブフォルダ数を取得
        If .SubFolders.Count > 0 Then
            For Each mySubFolder In .SubFolders
                FolderNum = FolderNum + 1
                Set NodX = FavoriteBox.Nodes.Add(, , "B" & FolderNum, mySubFo
lder)
                    'サブフォルダがある場合再帰的に繰り返す
                Call sFolderSearch2(mySubFolder, True)
            Next
        End If
    End With
    
    Set myFile = Nothing
    Set mySubFolder = Nothing
End Sub


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -