поиска каталогов в подкаталоге — Visual Basic(Бейсик)

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

Leave a Comment