VB6のフォーム上にフォルダを表示させる事は可能でしょうか?

解決


最上級初心者  2005-09-05 09:35:06  No: 124866  IP: [192.*.*.*]

いつも参考にさせて頂いております。

【質問】
・フォームの中にフォルダーを表示させる事は可能でしょうか?
  フォーム上に、フォルダを合体させたいのです。

  (VB上からフォルダーを開く事はできるのですが・・・)
    Dim FolderName As String
    FolderName = App.Path & "\あたらしいフォルダ\"
    Shell "rundll32.exe url.dll,FileProtocolHandler " & FolderName, vbNormalFocus

【作成環境】
・VB6 SP6

それでは、宜しく御願いします。

編集 削除
あんび  2005-09-05 09:44:49  No: 124867  IP: [192.*.*.*]

質問内容で何がしたいのかわからないですが、
表示させるだけなら、DirListBoxを使えばいいと思います。
関連して、DriveListBoxやFileListBoxも調べてみてください。

編集 削除
最上級初心者  2005-09-05 09:54:37  No: 124868  IP: [192.*.*.*]

お返事有難うございます。

DirListBox
DriveListBox
FileListBox
を参照してみます。

編集 削除
K.J.K.  2005-09-05 10:28:21  No: 124869  IP: [192.*.*.*]

WebBrowserコントロールを使うとか。
Navigate2メソッドで渡す引数は調べてみてください。

編集 削除
特攻隊長まるるう  2005-09-05 11:12:14  No: 124870  IP: [192.*.*.*]

既存のコントロールでは対応できない独自の動きをさせたい場合は
TreeView と ListView を並べておき、自分でフォルダを検索し、
その中のファイル・フォルダ名を検索し、エクスプローラのような
イメージで表示させる事もできます。

編集 削除
最上級初心者  2005-09-05 13:49:16  No: 124871  IP: [192.*.*.*]

皆様お返事有難うございます。

最初のFileListBoxをヘルプを見ながら頑張っています。
次にWebBrowserコントロールや TreeViewやListViewを調べてみます。
自分のやりたい事を上手に説明ができず申し訳ありませんでした。

上記を調べ終わりましたら、お返事をさせて頂きます。

編集 削除
最上級初心者  2005-09-09 11:50:36  No: 124872  IP: [192.*.*.*]

お返事が遅くなりました。

ListViewを使用する事になりまして、
色々なHPやヘルプを見ましてここまでできました。
それで、ご質問をさせて頂きます。
フォームを開いた時に、C:\新しいフォルダ\にあるTxt(テキストファイル)をListViewに表示をさせています。
作成日の降順はできるのですが、更新日時の降順はできますでしょうか?

宜しく御願い致します。


-----------------------------------------------------------
Option Explicit

Private Sub Form_Load()
    Dim FileSys  As Object
    Dim Folder   As Object
    Dim File     As Object
    Dim itmX     As ListItem

    ListView1.ListItems.Clear
    ListView1.ColumnHeaders.Clear
    Set FileSys = CreateObject("Scripting.FileSystemObject")
    ListView1.ColumnHeaders.Add text:="ファイル名", width:=ListView1.width / 2
    ListView1.ColumnHeaders.Add text:="作成日", width:=ListView1.width / 3     
    ListView1.BorderStyle = ccFixedSingle
    ListView1.View = lvwReport
    ListView1.SortKey = 1
    ListView1.SortOrder = lvwDescending
    Set Folder = FileSys.GetFolder("C:\新しいフォルダ\")
    For Each File In Folder.Files
        If Right$(File.Name, 4) = ".txt" Then
            Set itmX = ListView1.ListItems.Add(, , CStr(File.Name))
            itmX.SubItems(1) = File.DateCreated    
        End If
    Next
    ListView1.Refresh
    ListView1.Sorted = True

End Sub

編集 削除
通ってみた  2005-09-09 12:01:37  No: 124873  IP: [192.*.*.*]

>>    ListView1.SortKey = 1

この辺をいぢってみるとか

編集 削除
KG  2005-09-09 12:02:53  No: 124874  IP: [192.*.*.*]

File.DateLastModifiedとかじゃ取得できませんか?

#この手の質問は「更新日」よりも「タイムスタンプ」で検索すると
#有用なのが多く出てきたりします:)

編集 削除
最上級初心者  2005-09-09 12:12:44  No: 124875  IP: [192.*.*.*]

KG様・通ってみたさん有難うございます。
出来ました。
また一つ勉強が出来ました。

皆様有難うございました^^

編集 削除