プロが教える店舗&オフィスのセキュリティ対策術

こんにちは。
いつもお世話になっております。
早速ですが質問させて下さい。

DirListBoxについて、指定フォルダ以下から表示したいのですが可能でしょうか?
例えば、以下のようなパスを表示する場合に
D:\Test\Sample\aaa
通常はDirListBoxに「D:\Test\Sample\aaa」全てが表示されますが、
これを「\Sample\aaa」というように表示したいのです。

よろしければご教示下さい。

A 回答 (1件)

お世話になります。



VB のバージョンは VB6.0 ですよね?

DirListBox にそのような機能があるのか
私はわかりません。
代替案として、DirListBox のとなりに、
ListBox を配置して、
こんな感じではどうでしょうか。
(実行する際は、プロジェクト→参照設定→Microsoft Scripting Runtime にチェックを付けてください)

Private Sub Dir1_Change()
  
  Dim objFso As FileSystemObject
  Set objFso = New FileSystemObject

  Dim objFolder As Folder
  Set objFolder = objFso.GetFolder(Me.Dir1.Path)

  ' リスト作成
  Dim objSubFolder As Folder
  Dim strPath As String
  strPath = Me.Dir1.Path
  strPath = Split(strPath, "\")(UBound(Split(strPath, "\")))
  For Each objSubFolder In objFolder.SubFolders
    Call Me.List1.AddItem(strPath & "\" & objSubFolder.Name)
  Next objSubFolder

  Set objFolder = Nothing
  Set objSubFolder = Nothing

End Sub

この回答への補足

naganaga_001さん、回答ありがとうございます。
(返事が遅くなり申し訳ありません)

>VB のバージョンは VB6.0 ですよね?
環境を書くのを忘れていました。ごめんなさい。
Windows 2000 VB6.0 です。

サンプルプログラムありがとうございます。
これだと選択したフォルダ以下のみを表示可能ですね。
ただ、私が実現したかったのは少し違いまして、
DirListBoxに指定フォルダの上の階層を全く表示させたくないというものです。
(ユーザーに見せたくない)

これは実現不可でしょうか?

補足日時:2006/06/20 17:49
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!