Как правильно сделать поиск каталогов - VB

Узнай цену своей работы

Формулировка задачи:

Как правильно сделать поиск каталогов в Dir1 чтоб найденые каталоги выводились к примеру в Text1?

Решение задачи: «Как правильно сделать поиск каталогов»

textual
Листинг программы
  1. Dim InitialFolder
  2. Dim OldDrive As String
  3. Dim TotalDir 'переменная для обозначение общего количества папок
  4.  
  5. Private Sub Command1_Click()
  6. ChDrive Drive1.Drive
  7. ChDir Dir1.Path
  8. InitialFolder = CurDir
  9. Text2.Text = ""
  10. ScanFolders
  11. End Sub
  12.  
  13. Sub ScanFolders()
  14. Dim SubFolders As Integer
  15. '///начало обращения к внешней процедуре
  16. 'в данный блок вы можете вставить любую процедуру обработки текущей папки
  17. 'MsgBox CurrentFolder(Dir1.Path) 'просмотр текущей папки
  18. 'снимите маркер, если хотите получить общее количество папок, включая начальную
  19. 'TotalDir = TotalDir + 1
  20.  
  21. '\\\конец обращения к внешней процедуре
  22. 'В текст1. вводим то что ИЩЕМ.
  23. m = CurrentFolder(Dir1.Path)
  24. If m = (Text1.Text) Then
  25. Text2.Text = Dir1.Path + Chr$(13) + Chr$(10) + Text2.Text
  26. End If
  27.  
  28.  
  29. SubFolders = Dir1.ListCount 'сколько папок в текущей папке
  30. If SubFolders > 0 Then
  31. For i = 0 To SubFolders - 1
  32. ChDir Dir1.List(i)
  33. Dir1.Path = Dir1.List(i)
  34. File1.Path = Dir1.List(i)
  35. Form1.Refresh
  36. ScanFolders
  37. Next
  38. End If
  39. File1.Path = Dir1.Path
  40. MoveUp
  41. End Sub
  42.  
  43. Sub MoveUp()
  44. If Dir1.List(-1) <> InitialFolder Then
  45. ChDir Dir1.List(-2)
  46. Dir1.Path = Dir1.List(-2)
  47. End If
  48. End Sub
  49.  
  50. Private Sub Dir1_Change()
  51. ChDir Dir1.Path
  52. File1.Path = Dir1.Path
  53. End Sub
  54.  
  55. Private Sub Dir1_Click()
  56. With Dir1
  57. .Path = .List(.ListIndex)
  58. End With
  59. End Sub
  60. Private Sub Drive1_Change()
  61. On Error GoTo ErrHan
  62. ChDrive Dir1.Path
  63. Dir1.Path = Drive1.Drive
  64. Dir1.Refresh
  65. 'присвоение этой переменной значение Drive1.Drive для исключения ошибки
  66. OldDrive = Drive1.Drive
  67. Exit Sub
  68. ErrHan:
  69. Drive1.Drive = OldDrive
  70. End Sub
  71.  
  72. Private Sub Form_Load()
  73. ChDrive App.Path
  74. ChDir App.Path
  75. End Sub
  76.  
  77. Private Function CurrentFolder(sFolderPath)
  78. Dim str1() As String
  79. str1 = Split(sFolderPath, "")
  80. CurrentFolder = str1(UBound(str1))
  81. End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы