Bài giảng Visual Basic

Visual Basic (VB) là một công cụ lập trình hướng đối tượng sử dụng rộng

rãi để xây dựng các ứng dụng trong nhiều lĩnh vực khác nhau. Đối với các ứng

dụng phục vụ đào tạo VB đặc biệt quan trọng vì khả năng thiết kế nhanh chóng

các giao diện đẹp và thân thiện giữa người và máy tính. khác với một số ngôn

ngữ lập trình khác bên cạnh các tập lệnh, cú pháp lập trình VB thường xuyên

phải xử dụng các khái niệm như đối tượng, thuộc tính, phương thức, lớp

pdf21 trang | Chuyên mục: Visual Basic 6.0 | Chia sẻ: dkS00TYs | Lượt xem: 2201 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Visual Basic, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
umber
Lệnh Close sẽ đẩy toàn bộ dữ liệu trên vùng đệm file của hệ thống lên đĩa và
giải phóng thẻ file. Bạn cũng có thể sử dụng lệnh close như sau:
Close
Lệnh trên sẽ đóng toàn bộ các file đang mở.
- Các hàm xử lý tệp tin:
+ Print : ghi chuỗi ký tự vào file. Lệnh Print được sử dụng trong các file 
mở để ghi theo kiểu Input và Apend. Cấu trúc lệnh Print như sau:
Print #FileNum, VarTXT
Trong đó #FileNum là thẻ file. VarTXT là chuỗi ký tự cần ghi vào file.
L.T.Vinh 14
+ Input$() : cho phép đọc một đoạn dữ liệu có độ dài được xác định trước. 
Cấu trúc lệnh Input$() như sau:
Input$(Total, #FileNum)
Trong đó Total là số byte cần đọc. 
+ Put : ghi dữ liệu vào file được mở theo kiểu nhị phân. Cấu trúc lệnh Put 
như sau:
Put #FileNum, FPoiter, VarTXT
Trong đó FPoiter là số nguyên chỉ vị trí bắt đầu (tính bằng byte từ đầu 
file) của chuỗi VarTXT trên file có số thẻ là #FileNum.
+ Get : đọc dữ liệu từ file được mở theo kiểu nhị phân. Cấu trúc lệnh Get 
như sau:
Put #FileNum, FPoiter, VarTXT
+ Lof : nhận vào thẻ file và trả về chiều dài của tập tin tính theo byte 
tương ứng với file đó. Cấu trúc hàm Lof như sau:
LengthOfFile = Lof(#FileNum)
Ví dụ: chương trình Phone sau đây minh hoạ cách tạo và thao tác trên tệp tin 
PHONE.DAT. Bạn hãy thứ tự thực hiện các bước sau đây.
- Tạo một form mới, và xây dựng các đối tượng như trong bảng sau:
Đối tượng Thuộc tính Giá trị
Form Name
Caption
Height
Left
Top
Width
frmPhone
“”
3555
1530
1875
6705
TextBox Name
Height
Left
MaxLength
Text
Top
Width
txtName
285
840
40
“ ”
120
4335
TextBox Name
Height
Left
MaxLength
Text
Top
Width
txtPhone
285
840
40
“ ”
720
4335
TextBox Name
Height
Left
MaxLength
MultiLine
txtComments
1455
120
100
True
L.T.Vinh 15
Text
Top
Width
“ ”
1560
5055
CommandButton Name
Height
Left
Top
Width
cmdNew
495
5280
120
1215
CommandButton Name
Height
Left
Top
Width
cmdNext
495
5280
600
1215
CommandButton Name
Height
Left
Top
Width
cmdPrevieus
495
5280
1080
1215
CommandButton Name
Height
Left
Top
Width
cmdExit
495
6360
2520
1215
Lable Name
Caption
Height
Left
Top
Width
lblComment
Comments:
255
120
1320
975
Lable Name
Caption
Height
Left
Top
Width
lblPhone
Phone:
255
120
720
615
Lable Name
Caption
Height
Left
Top
Width
lblName
Name:
255
120
120
615
- Sau khi đã tạo Form như trên bạn bắt đầu viết các lệnh cho chương trình
L.T.Vinh 16
trong cửa sổ Code.
+ Bạn hãy tạo một module mới và lưu vào file với tên : PHONE.BAS. Bạn 
định nghĩa cấu trúc mẩu tin trong PHONE.BAS như sau:
Option Explicit
Type PersonInfo
Name As String * 40
Phone As String * 10
Comment As String * 100
End Type
+ Các lệnh trong phần khai báo chung của form như sau
Option Explicit
Dim Person As PersonInfo
Dim FileNum As Integer
Dim RecordLen As Long
Dim CurentRecord As Long
Dim LastRecord As Long
+ Tạo thủ tục SaveCurrentRecord() trong frmPhone 
Sub SaveCurrenRecord
Person.Name = txtName.Text
Person.Phone = txtPhone.Text
Person.Comments = txtComments.Text
Put #FileNum, CurrentRecord, Person
End Sub
+ Tạo thủ tục ShowCurrentRecord() trong frmPhone
Sub ShowCurrentRecord()
Get #FileNum, CurrentRecord, Person
txtName.Text = Trim(Person.Name)
txtPhone.Text= Trim(Person.Phone)
txtComments.Text= Trim(Person.Comments)
frmPhone.Caption = “Record ” + Str(CurrentRecord) + “/” Str(LastRecord)
End Sub
+ Tạo thủ tục Form_Load()
Sub Form_Load()
RecordLen = Len(Person)
FileNum = FreeFile
Open “PHONE.DAT” For Random As FileNum Len = RecordLen
CurrentRecord = 1
LastRecord = FileLen(“PHONE.DAT”) / RecordLen
If LastRecord = 0 Then
L.T.Vinh 17
LastRecord =1
End If
ShowCurrentRecord
End Sub
+ Tạo thủ tục cmdNew_Click(), trong frmPhone
Sub cmdNew_Cllick()
LastRecord = LastRecord
Person.Name = “”
Person.Phone = “”
Person.Comments = “”
Put #FileNum, LastRecord, Person
CurrentRecord = LastRecord
ShowCurrentRecord
txtName.SetFocus
End Sub
+ Tạo thủ tục cmdNext_Click(), trong frmPhone
Sub cmdNext_Click()
If CurrentRecord = LastRecord Then
MsgBox “End of file encountered !”, 48
Else
SaveCurrentRecord
CurrentRecord = CurrentRecord + 1
ShowCurrentRecord
End If
txtName.SetFocus
End Sub
+ Tạo thủ tục cmdPrevious_Click(), trong frmPhone
Sub cmdPrevious_Click()
If CurrentRecord = 1 Then
MsgBox “Beginning of file encountered !”, 48
Else
SaveCurrentRecord
CurrentRecord = CurrentRecord - 1
ShowCurrentRecord
End If
txtName.SetFocus
End Sub
+ Tạo thủ tục cmdExit_Click(),
trong frmPhone
Sub cmdExit_Click()
SaveCurrentRecord
Close FileNum
Hình 3.1 Hộp thoại Insert Object
L.T.Vinh 18
End
End Sub
3. OLE
OLE (Object Lingking and Embeding) là công nghệ kết nối và lồng ghép đối 
tượng, nó cho phép chao đổi dữ liệu động. Khi bạn bổ xung điều khiển hộp chứa 
OLE cho đồ án Visual Basic, bạn cung cấp cho người dùng cầu nối đến ứng 
dụng khác. 
3.1 Tạo các đối tượng OLE
Cách đơn giản nhất để tạo ra một đối tượng OLE là sử dụng hộp chứa OLE 
có sẵn trên thanh công cụ. Bạn chỉ việc chọn đối tượng OLE, đưa vào Form.
Visual Basic sẽ tự động đưa ra cửa sổ Insert Object (hình 3.1), trên đó có ghi
danh mục các đối tượng OLE (chính xác là phần mềm có hỗ trợ OLE), bạn chỉ 
cần chọn đối tượng OLE và chọn nút OK. 
Bạn cũng có thể tạo bổ xung một đối tượng OLE bằng cách chọn 
Object/Components và đến tab Inserttable Object. Sau đó, hãy đánh dấu lựa 
chọn cho đối tượng bạn muốn làm việc trong hộp danh sách.
Ví dụ: bạn có thể bổ xung đối tượng Excel Wordsheet cho hộp công cụ bằng 
cách điền vào hộp thoại Insertable Object như hình bên (hình 3.2). Sau khi chọn 
nút OK đối tượng OLE Excel Wordseet xẽ được thêm vào hộp công cụ như hình
3.3.
Hình 3.2 Insertable Object
L.T.Vinh 19
3.2 Các phương pháp điều khiển hộp chứa OLE
Ngoài các phương pháp chung, đối tượng OLE có một số phương pháp
riêng, chuyên dụng như sau:
Creat Embed Method: phương pháp này cho phép tạo ra đối tượng OLE kiểu 
lồng ghép. Để thực hiện trước hết bạn phải xác lập hai tính chất Class và
OLEType. OLEType Allowed =1, bạn phải dùng tính chất Class để xác định 
kiểu của đối tượng OLE. 
- Creat Link Method: Phương pháp này tạo đối tượng OLE từ tập tin hiện 
hữu. Để thực hiện trước hết bạn phải xác lập tính chất OLETypeAllowed 
và tính chất SouceDoc. Tính chất OLETypeAllowed có thể bằng 0 
(Linked) hoặc 2 (Either). Tính chất SouceDoc cung cấp tên tập tin 
- Copy Method: phương pháp này gửi toàn bộ dữ liệu và các tính chất lồng 
ghép của đối tượng đến clipboard của Windows. 
- Paste Method: phương pháp này sao chép từ clipboard của windows vào
điều khiển OLE.
- Update Method: phương pháp này kéo dữ liệu hiện hành của ứng dụng 
đưa vào điều khiển OLE.
- Do Verb Method: phương pháp kích hoạt đối tượng OLE. Để thực hiện, 
bạn cần xác định thông số Verb của thao tác này.
Hình 3.3 Microsoft Exel OLE
L.T.Vinh 20
- Close Method for OLE Object: phương pháp này sẽ đóng đối tượng OLE 
và xoá mọi liên kết với đối tượng đã điều khiển nó.
- Delete Method: dùng để xoá đối tượng.
- Save to File Method: dùng để ghi đối tượng OLE cùng với dữ liệu điều 
khiển nó vào file.
- ReadFromFile Method: dùng để tải đối tượng OLE cùng các dữ liệu điều 
khiển trong file OLE.
- InsertObjDlg Method: phương pháp này kéo lên hộp điều khiển 
InsertObject vào thời gian chạy chương trình.
- PasteSpecialDlg Method: hiển thị hộp thoại Paste Special ở thời gian 
chạy chương trình, cho phép người dùng dán đối tượng từ clipboard theo 
dạng thức chỉ định. 
- FetchVerb Method: phương pháp này đưa ra các danh sách động từ được 
ứng dụng hỗ trợ.
- SaveTo OLE1File Method: phương pháp này cho phép lưu đối tượng 
OLE tương thích với phiên bản OLE cũ.
4. User ActivetX Control
Mỗi ActivetX control là một đối tượng, các thuộc tính, phương thức, thủ tục 
xử lý sự kiện của nó được chứa trong tệp tin riêng biệt có phần mở rộng là
*.OCX. Sau khi đã đưa một ActivetX control vào Form bạn có thể thao tác với 
nó như đối với các control chuẩn. 
Bắt đầu từ phiên bản 5.0 Visual Basic mới cho phép người lập trình tự tạo ra 
các ActivetX của riêng mình. Bạn có thể mở riêng một file soạn thảo ActivetX 
bằng chọn lựa ActivetX Control từ cửa sổ New Project.
Việc soạn thảo ActivetX tương tự như soạn thảo Form ngoại trừ việc bổ 
xung các tính chất chức năng.
Để bổ xung một thuộc tính bạn cần phải sử dụng cặp thủ tục Property 
Get/Let và PropetyChanged.
1. Propety Get: nhận thông tin giá trị hiện hành của thuộc tính trên đối tượng.
2. Propety Let: gán giá trị thuộc tính cho đối tượng.
3. PropetyChanged: dùng để gán lại giá trị thuộc tính của đối tượng vào trong
bảng Property.
Ví dụ: Bạn có thể tạo ra một ActivetX Control gồm có hai đối tượng 
lblCaption (Lable Caption), và Shape1 và viết Code như sau:
Option Explicit
Public Event Click()
Private Sub UserControl_Click()
RaiseEvent Click
End Sub
Private Sub UserControl_Initialize()
UserControl_Resize
End Sub
L.T.Vinh 21
Public Property Get HinhDang() As ShapeConstants
HinhDang = Shape1.Shape
End Property
Public Property Let HinhDang(ByVal vNewValue As ShapeConstants)
Shape1.Shape = vNewValue
End Property
Private Sub UserControl_Resize()
Width = 1500
Height = 800
Shape1.Move 0, 0, Width, Height
End Sub
Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
PropBag.WriteProperty "HinhDang", HinhDang, Extender.Name
PropBag.WriteProperty "Caption", Caption, Extender.Name
End Sub
Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
HinhDang = PropBag.ReadProperty("HinhDang", Extender.Name)
Caption = PropBag.ReadProperty("Caption", Extender.Name)
End Sub
Public Property Get Caption() As String
Caption = lblCaption.Caption
End Property
Public Property Let Caption(ByVal NewCaption As String)
lblCaption.Caption = NewCaption
End Property
Bạn hãy lưu ActivetX Control trên vào file “MyAti.OCX”, sau đó bổ xung 
ActivetX Control vào Form bạn sẽ thấy cách hoạt động của nó. 

File đính kèm:

  • pdfBài giảng Visual Basic.pdf