Với VB, thông qua các đối tượng điều khiển tập tin, thư mục và ổđĩa, việc lập trình truy cập tới các thư mục, tệp tin, ổ đĩa trên máy tắnh là chuyện đơn giản. Phần dưới đây trình bày cách sử dụng hiệu quả các điều khiển này trong dự án VB.
DriveListBox
DirListBox
4.1 Điều khiển DriveListbox
Điều khiển DriveListBox dùng để tạo giao diện truy cập đến danh sách các ổ đĩa tìm thấy trên máy tắnh.
Do là DriveListBox nên hình dáng cũng như một số thuộc tắnh của điều khiển này giống với điều khiển ComboBox trình bày ở trên (mục 3). Dưới đây là một số thuộc tắnh hay được sử dụng:
List - để truy cập tới từng ổ đĩa trên DriveListBox. Vắ dụ Drive1.List(1) Ố
cho biết đường dẫn của ổđĩa thứ 2 (thứ tựđược tắnh từ 0) trên Drive1.
ListCount - cho biết tổng sốổđĩa truy cập được trên máy tắnh.
ListIndex - cho biết số thứ tự của ổđĩa đang chọn.
4.2 Điều khiển DirListBox
Điều khiển DirListBox dùng để tạo giao diện truy cập đến cây thư mục trên máy tắnh. Dưới đây là một số thuộc tắnh hay được sử dụng:
List - để truy cập tới từng thư mục con (Item) trên cây thư mục. Vắ dụ
Dir1.List(2) Ố cho biết đường dẫn của thư mục thứ 3 (thứ tựđược tắnh từ 0) từ
trên xuống trên cây thư mục Dir1.
ListCount - cho biết tổng số thư mục có trên cây thư mục DirLisstBox.
Điều khiển DriveListBox
ListIndex - cho biết số thứ tự của thư mục con đang được chọn trên cây thư
mục.
Path - cho biết đường dẫn đầy đủ thư mục mẹ của thư mục con đang chọn trên cây thư mục (thư mục gốc là ổđĩa dang chọn).
4.3 Điều khiển FileListBox
Điều khiển FileListBox dùng để tạo giao diện truy cập đến danh sách các tệp tin (files) trên một thư mục nào đó. Dưới đây là một số thuộc tắnh hay được sử
dụng:
List - để truy cập tới từng tệp tin trên danh sách. Vắ dụ File1.List(2) Ố cho
biết tệp tin thứ 3 (thứ tựđược tắnh từ 0) trong danh sách các tệp tin đang hiển thị ở File1..
ListCount - cho biết tổng số tệp tin đang hiển thị trên FileListBox.
ListIndex - cho biết số thứ tự của tệp tin đang được chọn trên FileListBox.
Path - đường dẫn tới thư mục cho FileListBox làm việc.
Pattern - thiết lập đặt lọc cho các tệp tin hiển thị trên FileListBox.
4.4 Vắ dụ tổng hợp
Thiết kế một giao diện như sau:
Khi chọn một ổ đĩa, cây thư mục của ổ đĩa đó xuất hiện trên một DirListBox có tên Dir1;
Khi chọn một thư mục trên Dir1, danh sách các tệp tin của thư mục đó với phần mở rộng của tệp tin thỏa mãn Combo1 sẽđược hiển thị lên một FileListBox có tên File1. Đồng thời máy tắnh sẽđếm số tệp tin đang hiển thị trên File1 ra một Label có tên lbThongke.
Toàn bộ mã lệnh cho form trên như sau:
Private Sub Form_Load()
'---
'Add các kiểu file cần lọc lên Combo1 ' Combo1.AddItem "*.*" Combo1.AddItem "*.doc" Combo1.AddItem "*.txt" Combo1.AddItem "*.exe" '--- 'ngầm định sẽ hiển thị *.* ' Combo1.ListIndex = 0 End Sub Drive1 lbThongke Dir1 File1 Combo1
On Error GoTo Thoat
'---
'Thiết lập ổ đĩa cho Dir1 là Drive1 ' Dir1.Path = Drive1 Exit Sub '---
'Trường hợp ổ đĩa không sẵn sàng, hiển thị một thông báo lỗi
'
Thoat:
MsgBox "Không truy cập được ổ đĩa này!", vbCritical
End Sub
Private Sub Dir1_Change()
'---
'gọi thủ tục hiển thị tệp tin lên File1 '
Call Show_file
End Sub
Private Sub Combo1_Click()
'---
'gọi thủ tục hiển thị tệp tin lên File1 ' Call Show_file End Sub Sub Show_file() '---
'Thiết lập đường dẫn cho File1 là thư mục đang chọn ở Dir1 '
File1.Path = Dir1
'---
'Thiết lập thuộc tắnh đặt lọc cho File1 ở Combo1 '
File1.Pattern = Combo1
'---
'thống kê tổng số File hiển thị đưa ra lbThongke '
lbThongke.Caption = "có " + Str(File1.ListCount) + " file(s)"