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

投稿日: 2004/01/05(Mon) 23:26
投稿者魔界の仮面弁士
Eメール
URL
タイトルRe: フォルダの選択

> フォルダ選択ダイアログを表示し、
> ユーザーにより選択されたフォルダ位置を取得したいのですがどのような手法を使用すれば良いのでしょうか?

ShellオブジェクトのBrowseForFolderメソッドを使うか、もしくは、
SHBrowseForFolder APIを使うという手があります。
物理フォルダだけではなく、仮想フォルダ(≠ディレクトリ)も取得可能です。


BrowseForFolderメソッドを使うのであれば、たとえばこんな感じで。

Private Sub Command1_Click()
    Dim F As Object
    
    With CreateObject("Shell.Application")
        Set F = .BrowseForFolder(Me.hWnd, "タイトル", 0)
        If F Is Nothing Then
            MsgBox "キャンセル"
        Else
            MsgBox F.self.Path
            Set F = Nothing
        End If
    End With
End Sub

なお、古い環境の場合、Folderオブジェクトのselfプロパティが使用できません。
その場合は、「F.self.Path」の替わりに「F.Items().Item.Path」で代用してみてください。


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

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

- Web Forum -