M C L C
1
CH NG I: T NG QUAN L P TRÌNH VISUAL BASICƯƠ
Trong ch ng này chúng tôi s trình bày tóm t t v môi tr ng l p trình Visual Basic (VB) cùng cácươ ườ
nguyên t c c b n đ xây d ng m t ng d ng v i môi tr ng này. Các v n đ đ c trình bày trong ch ng m t ơ ườ ượ ươ
bao g m:
Môi tr ng l p trình Visual Basicườ
Xây d ng ng d ng v i môi tr ng Visual Basic ườ
Gi i thi u m t s ví d minh ho
I. MÔI TR NG L P TRÌNH VISUAL BASICƯỜ
1. Gi i thi u
Gi ng nh các h đi u hành (HĐH) khác, HĐH Windows cũng cung c p m t t p h p l nh g i là Windows ư
API (Windows Application Programming Interface) đ các l p trình viên th phát tri n c ng d ng ch y trên
HĐH này.
T p l nh Windows API h n 800 l nh khác nhau. v y, đ xây d ng đ c m t ng d ng trên ơ ượ
Windows, ng i l p trình c n ph i vi t và đ ng th i ph i nh ý nghĩa, cách s d ng c a khá nhi u l nh Windowsườ ế
API. Chính đi u này đã tr nên ph c t p. Nh m kh c ph c các y u đi m nêu trên, Microsoft đã gi i thi u công c ế
tr c quan VB, giúp xây d ng nhanh các ng d ng trên Windows.
VB đ c gi i thi u l n đ u tiên vào năm 1991, ti n thân là ngôn ng l p trình Basic trên HĐH DOS. Tuyượ
nhiên, lúc b y gi VB ch a đ c nhi u ng i ng i ti p nh n. Mãi cho đ n năm 1992, khi phiên b n 3.0 ra đ i ư ượ ườ ườ ế ế
v i r t nhi u c i ti n so v i các phiên b n tr c đó, VB m i th t s tr thành m t trong nh ng công c chính đ ế ướ
phát tri n các ng d ng trên Windows.
Các phiên b n sau đó c a VB, nh phiên b n 4.0 ra đ i năm 1995, phiên b n 5.0 ra đ i năm 1996 và g n ư
đây nh t là phiên b n 6.0 ra đ i năm 1998 v i các tính năng ngày càng đ c nâng cao đã khi n m i ng i công ượ ế ườ
nh n VB hi n là m t trong nh ng công c chính đ phát tri n các ng d ng trên Windows.
2. Đ c đi m môi tr ng Visual Basic ườ
Khác v i các môi tr ng l p trình h ng th t c tr c đây trong HĐH DOS nh Pascal, C hay Foxpro, VB ườ ướ ướ ư
là môi tr ng l p trình h ng bi n c trên HĐH Windows.ườ ướ ế
khác nhau gi a l p trình h ng th t cướ h ng bi n cướ ế ? Trong các môi tr ng l p trình h ngườ ướ
th t c, ng i l p trình ph i xác đ nh tr c tu n t th c hi n c a t ng l nh và t ng th t c có trong ch ng trình. ườ ướ ươ
Có nghĩa là sau l nh này h s ph i th c hi n ti p l nh nào,… V i môi tr ng l p trình h ng bi n c nh VB t ế ườ ướ ế ư
ng i l p trình ch vi c đ nh nghĩa nh ng l nh c n th c hi n khi m t bi n c do ng i dùng tác đ ng lênườ ế ườ
ch ng trình mà không quan tâm đ n tu n t các x lý nh p li u.ươ ế
d , v i m t ch ng trình đ n gi n nh nh 1 d i đây m c tiêu nh p vào hai giá tr ươ ơ ư ướ s công
đ n giáơ công vi c, tính và in ra ti n công ph i tr . V i h ng th t c, ng i l p trình s ph i vi t các l nh tu n t ướ ườ ế
đ c xác đ nh tr c nh sau:ượ ướ ư
Ch ng i dùng nh p vào giá tr s công ườ
Ch ng i dùng nh p vào giá tr đ n giá công vi c ườ ơ
Tính ti n công = s công * đ n giá công vi c ơ
In ra giá tr ti n công
Trong khi đó, v i môi tr ng l p trình h ng bi n c ng i l p trình s không quan tâm tu n t th c hi n ườ ướ ế ườ
c a các l nh nh p mà ch đ nh nghĩa các l nh x lý t ng ng v i các bi n c x y ra nh : ươ ế ư
Bi n c khi ng i dùng nh n chu t t i nút Tính:ế ườ
- Tính ti n công = S công * Đ n giá công ơ
- Gán giá tr ti n công vào ô Ti n công
Bi n c khi ng i dùng nh n chu t t i nút ế ườ Thoát:
- Thoát kh i ng d ng
2
Hình 1: Màn hình ch ng trình tính ti n côngươ
3. Màn hình làm vi c c a Visual Basic
Màn hình làm vi c c a VB g m các thành ph n chính sau: (Xem hình 2)
H p công c (Toolbox): Ch a các bi u t ng t ng ng v i nh ng đ i t ng đi u khi n chu n bao ượ ươ ượ
g m nhãn, h p văn b n, nút l nh…
Màn hình giao ti p (Form):ế Đây chính là đ i t ng đ xây d ng các màn hình giao ti p c a ng ượ ế
d ng. Khi v a t o m i, màn hình giao ti p không ch a đ i t ng đi u khi n nào c , nhi m v c a ế ượ
ng i l p trình v các đ i t ng đi u khi n lên màn hình giao ti p đ nh nghĩa các dòng l nh xườ ượ ế
lý bi n c liên quan cho màn hình và các đi u khi n trên đó. M c nhiên lúc đ u m i m t ng d ng chế
có m t màn hình giao ti p. Trong tr ng h p này giao di n c a ng d ng c n có nhi u màn hình làm ế ườ
vi c thì chúng ta ph i thi t k nhi u màn hình giao ti p Form t ng ng. ế ế ế ươ
C a s thu c tính (Properties window): Cho phép đ nh thu c tính ban đ u cho các đ i t ng bao ượ
g m màn hình giao ti p (form) và các đi u khi n (control) trên đó. ế
C a s qu n ng d ng (Project explorer): c a s qu n ng d ng hi n th các màn hình giao
ti p (form), th vi n x lý (module),… hi n có trong ng d ng. Ngoài ra, c a s qu n ng d ng cònế ư
cho phép ng i l p trình th c hi n nhanh nh ng thao tác nh m , thêm, xoá các đ i t ng này kh iườ ư ượ
ng d ng (project).
C a s đ nh v (Form layout): Cho phép xem đ nh v t hi n th c a m i màn nh giao ti p ế
(form) khi ch y.
3
Hình 2: Màn hình làm vi c Visual Basic
C a s l nh (Code window): Hình 3 cho th y c a s l nh c a VB. Đây là c a s cho phép khai báo
các dòng l nh x bi n c cho màn hình giao ti p các đ i t ng đi u khi n trên màn hình giao ế ế ượ
ti p. M c nhiên c a s l nh không đ c hi n th , ng i l p trình có th nh n nút chu t ph i trên mànế ượ ườ
hình giao ti p và ch n ch c năng View code đ hi n th c a s l nh khi c n. Ph n trên cùng c a mànế
hình c a s l nh chúng ta s th y 2 h p ch n (combo box), cho phép chúng ta ch n đ i t ng ượ
bi n c liên quan đ n đ i t ng nàyế ế ượ
Hình 3: Màn hình c a s l nh c a Visual Basic
Project
Explorer
Properties
Form
Layout
FormToolBox
4
4. Các khái ni m c s ơ
Tr c khi tìm hi u c u trúc c a m t ng d ng trong VB g m nh ng gì, hãy làm quen v i các khái ni mướ
mà chúng ta th ng g p trong qtrìh xây d ng m t ng d ng v i VB.ườ
Màn hình giao ti p (Form):ế Đây là đ i t ng chính trong quá trình xây d ng giao di n ng d ng. Khi ượ
m t ng d ng đ c ch y, c a s ng d ng (application window) các c a s giao di n khác c a ượ
ch ng trình là các màn hình giao ti p khi đ c t o ra lúc ban đ u không ch a đ i t ng nào, nhi mươ ế ượ ượ
v c a ng i l p trình là v các đ i t ng đi u khi n lên màn hình giao ti p đ t o thành giao di n ườ ượ ế
c a ng d ng.
Đ i t ng đi u khi n (Control): ượ Đ i t ng đi u khi n các thành ph n s đ c v lên màn hình ượ ượ
giao ti p đ t o thành giao di n c a m t ng d ng. Các thành ph n này th các nhãn, ô nh pế
li u, nút l nh,…
Thu c tính (Properties): T p h p các thông tin liên quan đ n tr ng thái m t đ i t ng nh tên, v trí, ế ượ ư
màu s c hi n th ,… đ c g i là thu c tính c a đ i t ng. Trong quá trình l p trình, ng i l p trình có ượ ượ ườ
th thay đ i tr ng thái c a các đ i t ng b ng cách thay đ i giá tr c a các thu c tính. ượ
d , đ thay đ i màu n n c a m t đ i t ng chúng ta th gán thu c tính BackColor c a đ i ượ
t ng này b ng giá tr màu m i.ượ
Ph ng th c (Method):ươ Ngoài thu c tính nh ng thông tin ch ra tình tr ng, các đ i t ng còn ượ
nh ng hành đ ng x lý liên quan đ n chúng. Các hành đ ng liên quan đ n m t đ i t ng đ c g i ế ế ượ ượ
các ph ng th c c a đ i t ng. L y ví d , khi c n di chuy n m t đ i t ng t v trí này đ n v trí m iươ ượ ượ ế
chúng ta có th dùng ph ng th c Move c a đ i t ng này. ươ ượ
Th c ch t m i ph ng th c là m t t p h p các l nh đã đ c VB xây d ng s n cho đ i t ng này. ươ ượ ượ
Thay dùng ph ng th c Move đ di chuy n m t đ i t ng sang v t m i, ng i l p trình thươ ượ ườ
dùng hai l nh đ thay đ i thu c tính Top, Left c a đ i t ng này. ượ
Bi n c (Event) - Th t c x bi n c (Event Sub):ế ế Bi n c thông tin cho bi t nh ng đangế ế
x y ra v i m t đ i t ng trong ng d ng đang ch y. Khi có bi n c phát sinh đ i v i m t đ i t ng thì ượ ế ượ
HĐH Windows s g i th c hi n các l nh trong th t c x bi n c (Event-Sub) t ng ng. M c ế ươ
nhiên lúc ban đ u, các th t c x lý bi n c là r g. VB cho phép ng i l p trình khai báo các l nh c n ế ườ
thi t trong nh ng th t c x bi n c . V i nút l nh Tính trong hình 1, chúng ta s th y nhi uế ế
bi n c th t c x bi n c t ng ng. Tuy nhiên chúng ta ch c n khai báo các l nh c n th cế ế ươ
hi n khi phát sinh bi n c do ng i dùng nh n chu t (Mouse Click) t i nút này nh d i đây. ế ườ ư ướ
Sub cmdTinh_Click()
Dim socong As Single, dongia As Single
Socong = Val(txtSocong.Text)
Dongia = Val(txtDongia.Text)
txtTiencong = Socong * Dongia
End Sub
Th t c (Sub) Hàm (Function): Ngoài các th t c x bi n c , đ c u trúc ch ng trình đ c ế ươ ượ
ràg m ch l c, tránh l p l i nhi u l n… ng i l p trình th khai báo các th t c (hàm) ng chung ườ
và g i th hi n các th t c (hàm) này khi c n thi t. ế
Th vi n (Module):ư Các đ i t ng dùng chung nh các bi n toàn c c, th t c hay hàm đ c s ượ ư ế ượ
d ng cho nhi u màn hình giao ti p s đ c khai báo trong th vi n c a ng d ng. M i m t th vi n ế ượ ư ư
dùng chung nh v y đ c g i là m t module.ư ượ
II. T O NG D NG V I VISUAL BASIC
1. C u trúc m t ch ng trình Visual Basic ươ
Trong VB, v c b n m t ch ng trình ng d ng (hay còn đ c g i ơ ươ ượ project) s ch a m t hay nhi u màn
hình giao ti p ếForm. Ngoài nh ng màn hình giao ti p ra, ng d ng còn th các th vi n ( ế ư Module) l u trư
các thành ph n dùng chung c a toàn b ng d ng nh bi n, th t c, hàm,… ư ế
Khi l u tr trên đĩa, m t ng d ng s g m nh ng t p tin sau đây:ư
5