vbQuestion | 32 | Hiển thị biểu tượng biểu thị rằng chương trình cần thêm thông tin từ phía người sử dụng trước khi có thể tiếp tục thực hiện. |
vbExclamation | 48 | Hiển thị biểu tượng để biểu thị chương trình đã xảy ra một vấn đề nào đó, yêu cầu người sử dụng hiệu chỉnh hoặc có thể dẫn đến một kết quả không mong muốn. |
vbInformation | 64 | Hiển thị biểu tượng dùng cho các thông báo cung cấp thông tin cho người sử dụng. |
Có thể bạn quan tâm!
- Thuộc Tính, Phương Thức Và Sự Kiện
- Lập trình Window - 5
- Các Phép Toán Quan Hệ (Hay Phép So Sánh)
- Tham Số Và Việc Truyền Tham Số Cho Chương Trình Con
- Lập trình Window - 9
- Thay Đổi Giá Trị Một Phần Tử Trong Collection
Xem toàn bộ 248 trang tài liệu này.
Khi hàm MsgBox( ) được sử dụng nó cung cấp một giá trị cho một biến ví dụ: X = MsgBox("Bạn có muốn tiếp tục không", vbYesNoCancel, "Thông báo")
Giá trị X được gọi là giá trị trả về của hàm MsgBox( ), nó xác định nút lệnh mà người sử dụng đã nhấn. Các giá trị có thể được tóm tắt trong bảng sau:
Giá trị | Nút được nhấn | |
vbOK | 1 | OK |
vbCancel | 2 | Cancel |
vbAbort | 3 | Abort |
vbRetry | 4 | Retry |
vbIgnore | 5 | Ignore |
vbYes | 6 | Yes |
vbNo | 7 | No |
Ví dụ:
Dim x As Integer
Private Sub Command1_Click()
x = MsgBox("Hãy kích vào một nút lệnh nào đó", vbAbortRetryIgnore) Select Case x
Case 3
MsgBox "Bạn đã kích nút Abort" Case 4
MsgBox "Bạn đã kích nút Retry" Case 5
MsgBox "Bạn đã kích nút Ignore" End Select
End Sub
2.9.2. Hiển thị thông tin lên Form
Để hiển thị thông tin lên Form ta viết lệnh
<Tên Form>. Print <Thông tin>
Ví dụ:
Dim X as Integer X = 3
Form1.Print “X = “, X
Form1.Print “Giá trị biểu thức”; X*2 - 3 + X*X;
Nếu cuối câu lệnh Print ta đặt dấu ; thì con trỏ vẫn nằm ở dòng cũ ngược lại con trỏ sẽ nhảy xuống dòng mới. Ta có thể dùng hằng vbCrlf để điều khiển xuống dòng. Để điều khiển vị trí in trên Form ta có thể dùng các thuộc tính CurrentX, CurrentY của Form.
Form1.CurrentX = cột Form1.CurrentY = hàng
Để xóa thông tin trên Form (trừ các điều khiển) ta dùng phương thức cls
Ví dụ:
Me.cls „ hoặc Form1.cls
2.9.3. Hộp nhập dữ liệu
Hàm InputBox( ) dùng để nhận thông tin từ người sử dụng. Hàm này hiển thị một hộp thoại để yêu cầu người sử dụng nhập dữ liệu, hộp thoại có một dòng thông báo, một hộp soạn thảo, 2 nút OK và Cancel như hình sau:
Tiêu đề của hộp thoại
Thông báo Hộp văn bản
Hình 2.5. Hộp nhập dữ liệu (InputBox) Cú pháp của hàm InputBox( ):
InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context]) Trong đó:
Các tham số prompt, title, helpfile và context giống như ở MsgBox.
Default: Là tham số tuỳ chọn dạng xâu ký tự xuất hiện ngầm định trong hộp văn bản khi hộp thoại xuất hiện. Nếu bỏ qua tham số này hộp văn bản sẽ rỗng.
xpos, ypos: Là tham số tuỳ chọn xác định vị trí theo chiều ngang và dọc nơi hộp thoại xuất hiện, chúng tương tự như thuộc tính left và top của đối tượng Form. Khi người sử dụng nhập thông tin vào hộp văn bản sau đó kích OK thì hàm InputBox( ) sẽ trả về chuỗi kí tự nằm trong hộp soạn thảo.
Ví dụ: Thiết kế một form trên đó có một nút lệnh (CommandButton1), sau đó viết các dòng lệnh sau vào cửa sổ Code.
Dim Ten As String
Private Sub Command1_Click()
Ten = InputBox("Hãy nhập vào tên của bạn", "Input box") MsgBox "Xin chào bạn: " & Ten
End Sub
Chạy chương trình rồi nhấn chuột vào Commandbutton1, xuất hiện hộp nhập sau:
Hình 2.6. Ví dụ hộp nhập dữ liệu
2.10. Quy ước viết lệnh
2.10.1. Lệnh gán
Lệnh gán dùng để gán giá trị của một biểu thức cho một biến.
<Tên Biến> = <Biểu thức>
Ví dụ :
x =100
y = x*100
Chú ý :
Kiểu dữ liệu sau khi tính toán của biểu thức bên phải phải phù hợp với kiểu dữ liệu của biến, nếu không sẽ xuất hiện lỗi
2.10.2. Ngăn cách các câu lệnh trên một dòng
Ta có thể viết nhiều câu lệnh trên một dòng, và các câu lệnh đó phải ngăn cách nhau bởi dấu hai chấm “:”.
Ví dụ:
StartTime = Now: EndTime = StartTime + 10
2.10.3. Kéo dài câu lệnh trên hai dòng
Khi có những câu lệnh dài chúng ta có thể viết câu lệnh đó trên nhiều dòng, và dùng kí hiệu gạch nối (_) để nối các dòng đó.
2.10.4. Nối 2 xâu kí tự
Để nối hai xâu kí tự, chúng ta sử dụng 1 trong 2 kí hiệu sau: & hoặc +
Ví dụ :
Label1.Caption = “Đại học sư phạm kỹ thuật Nam Định” & “--"_ & “Khoa CNTT”
Label2.Caption = “Bây giờ là :“ + Now
2.10.5. Qui ước đặt tên biến và tên đối tượng
Qui ước đặt tên biến
Để thuận tiện cho việc bảo trì ta nên dùng các chuẩn đặt tên. Qui ước đặt tên biến không những giúp ta đặt tên biến mà còn nêu rò phạm vi của các biến cũng như kiểu dữ liệu của nó. Những qui ước dưới đây không phải là bắt buộc, chúng chỉ là các gợi ý.
[g/m] [a] tName
Trong đó mọi dấu chỉ báo (tiền tố) đều ở dạng chữ thường.
[g/m] được dùng nếu biến khai báo là toàn cục (public) hoặc ở cấp mô đun (private). Phần này được bỏ qua nếu biến được dùng cục bộ cho một thủ tục.
[a] Được dùng nếu biến là một mảng t là kiểu dữ liệu của biến như sau:
Tiền tố | Kiểu dữ liệu | Tiền tố | |
Integer | n | Currency | c |
Double | d | Boolean | b |
Long | l | Single | g |
Date | t | Object | o |
String | s | Variant | v |
Name là tên biến, phải thích hợp với công dụng thực tế của biến,
Ví dụ:
Dim nLoopcount as Integer
Dim masLastname (100) as String Public gcSalestax as Currency
Qui ước đặt tện biến đối tượng
Các qui ước đặt tên đối tượng thường theo cú pháp chung sau:
oName
Trong đó o là kiểu đối tượng được viết tắt
Viết tắt | Điều khiển | Viết tắt | |
CommandButton | cmd | Data | dat |
TextBox | txt | HScrollBar | hsb |
Label | lbl | VScrollBar | vsb |
PictureBox | pic | DriveListBox | drv |
OptionButton | opt | DirListBox | dir |
CheckBox | chk | FileListBox | fil |
ComboBox | cbo | Line | lin |
ListBox | lst | Shape | shp |
Timer | tmr | OLE | ole |
Frame | fra | Form | frm |
Ví dụ:
txtHoten, cboGioitinh, frmQuanLy v.v...
2.11. Lệnh If…Then
Câu lệnh IF cho phép lựa chọn một trong hai nhánh tùy thuộc vào giá trị của một biểu thức lôgic(điều kiện) là Đúng (True) hay Sai (False).
Cú pháp 1:
If <điều kiện> Then <lệnh>
Ví dụ :
If x>10 Then Print “x lớn hơn 10”
Cú pháp 2:
If <điều kiện> Then
<khối lệnh>
End If
Ví dụ:
If x <> 0 Then y = 100/x
txtketqua.Text = y End If
Cú pháp 3 :
If <điều kiện> Then
<khối lệnh 1>
Else
<khối lệnh 2>
Ví dụ:
If x <> 0 Then y = 100 / x
txtketqua.Text = y Else
Print “Bạn phải nhập giá trị khác 0” End If
Cú pháp 4:
If <điều kiện1> Then
<khối lệnh 1>
Else If <điều kiện 2> then
<khối lệnh 2>
End If
Ví dụ:
Else End If
<khối lệnh 3>
If diem >=8 Then Xeploai = “Giỏi”
Else If diem >=7 Then
Xeploai = “Khá” Else If diem >= 5 Then
Xeploai = “Trung bình”
End If
End If End If
2.12. Lệnh Select Case
Cú pháp:
Select Case <Biểu thức kiểm tra> [Case <Danh sách biểu thức 1>
[Khối lệnh 1]
[Case <Danh sách biểu thức 2> [Khối lệnh 2]
. . .
. . .
. . .
[Case Else
[Khối lệnh n] End Select
Hoạt động :
Chương trình sẽ kiểm tra, nếu <biểu thức kiểm tra> bằng một giá trị nào đó trong
<danh sách biểu thức i> thì khối lệnh tương ứng với danh sách biểu thức đó sẽ được thực hiện. Ngược lại, <Khối lệnh n> sẽ được thực hiện
Ví dụ:
Viết chương trình sử dụng điều khiển Label, TextBox, ComboBox, Commandbutton thực hiện các phép toán số học như thiết kế mẫu:
Giải:
Bước 1. Thiết kế form theo mẫu bằng cách đưa vào form Label, TextBox, ComboBox, Commandbutton, sau đó xác định vị trí, kích thước cho các điều khiển cho phù hợp.
Bước 2. Thiết lập một số thuộc tính cho các điều khiển như bảng sau:
Điều khiển | Thuộc tính | Giá trị | Ghi chú | |
1 | Form | Name | Form1 | |
Caption | Các phép toán | |||
2 | CommandButton | Name | cmdtinh | |
Caption | Tính | |||
3 | CommandButton | Name | cmdthoat | |
Caption | Thoát | |||
4 | TextBox | Name | txta | |
5 | TextBox | Name | txtb | |
6 | TextBox | Name | txtkq | |
7 | ComboBox | Name | cbopt |
List | + | |
- | Mỗi giá trị trên | |
* | một dòng, nhấn | |
/ | Ctrl+Enter để | |
Mod | xuống dong | |
^ |
Bước 3. Mở cửa sổ lệnh của Form1 và gò vào các dòng lệnh sau:
Private Sub cmdthoat_Click() End
End Sub
„-----------------------------------------------------------------------------
Private Sub cmdtinh_Click()
Dim a As Integer, b As Integer, kq As Double a = Val(txta.Text)
b = Val(txtb.Text) Select Case cbopt.Text
Case "+"
kq = a + b Case "-"
kq = a - b Case "*"
kq = a * b Case "/"
kq = a / b Case ""
kq = a b Case "mod"
kq = a Mod b Case "^"
kq = a ^ b
End Select txtkq.Text = kq
End Sub
Bước 4. Chạy chương trình (F5).