CHƯƠNG 1 TỔNG QUAN VỀ NGÔN NGỮ VISUAL BASIC 6. GIỚI THIỆU Visual Basic là một công cụ lập trình trực quan của Microsoft, giúp chúng ta có thể xây dựng một cách nhanh và hiệu quả các ứng dựng trên Windows. Khác với các môi trường lập trình hướng thủ tục trước đây Visual Basic là môi trường lập trình hướng đối tượng trên Windows. Visual Basic không chỉ cung cấp một bộ công cụ hoàn chỉnh để đơn giản hoá việc triển khai lập trình ứng dụng, mà Visual Basic còn cung cấp cho chúng ta công cụ để kết nối CSDL một cách thật dễ dàng.
Khi thiết kế một chương trình bằng Visual Basic người làm luôn phải trải qua hai bước chính đó là: - Thiết kế giao diện: Thiết kế giao diện chính là thiết kế hình dạng của Form, việc bố trí các điều khiển trên đó như thế nào. - Viết lệnh cho các điều khiển: Dùng các lệnh trong Visual Basic để quy định cách ứng xử cho mỗi Form và cho mỗi Control. ĐỐI TƯỢNG VÀ CÁCH SỬ DỤNG ĐỐI TƯỢNG 1. Đối tượng (Object) Như trên đã nói Visual Basic là một ngôn ngữ lập trình theo kiểu hướng đối tượng vì vậy làm việc với Visual Basic chính là làm việc với các đối tượng.
Đặc điểm của các đối tượng trong chương trình: - Mỗi đối tượng đều có một tên để phân biệt. - Mối đối tượng đều có nhiều đặc tính, những đặc tính này được gọi là các thuộc tính (Property) của đối tượng đó. - Mỗi đối tượng này đều có nhiều hoạt động và các hoạt động này được gọi là các phương thức (Method) của nó. - Mỗi đối tượng đều có những phản ứng (sự kiện).
Cách truy xuất đối tượng Truy xuất đối tượng là đặt các thuộc tính cho đối tượng này, bất cứ khi nào bạn truy xuất đối tượng đều được viết theo cú pháp sau: <tên đối tượng>.<tên thuộc tính hay phương thức> 7 c 1. Viết lệnh cho đối tượng Khi người làm đặt một điều khiển lên Form lúc đầu nó chưa hoạt động vì vậy, phải viết lệnh cho đối tượng bằng cách chọn đối tượng sau đó vào Menu View/Code (hoặc Double Click vào đối tượng hoặc Right Click vào đối tượng sau đó chọn View Code) khi đó cửa sổ lệnh hiện ra, chúng ta có thể viết lệnh vào cửa sổ đó. Mỗi phần mã lệnh cho một sự kiện xảy ra trên một đối tượng đều có hai dòng tiêu đề đầu là Sub và cuối là End Sub bạn hãy giữ nguyên hai dòng này và viết mã lệnh vào giữa hai dòng đó. Visual Basic có đặc điểm là tự kiểm tra cú pháp khi chúng ta viết lệnh.
Khi viết xong một dòng lệnh và chuyển sang một dòng lệnh khác thì VB sẽ kiểm tra câu lệnh vừa viết nếu có lối thì sẽ báo còn lại tự động đối chữ thường, chữ hoa cho chương trình được rõ ràng. CỬA SỔ PROPERTIES Cửa sổ này cho phép lập trình viên xem xét và sửa đổi các thuộc tính của biểu mẫu và các điều khiển trong lúc thiết kế. Phần trên cửa sổ là danh sách các đối tượng. Đối tượng được chọn trong danh sách này sẽ có các thuộc tính của nó hiển thị ở phần bên dưới của cửa sổ.
BIẾN, HẰNG VÀ CÁC KIỂU DỮ LIỆU 1. Biến Biến được dùng để lưu tạm thời các giá trị tính toán trong quá trình xử lý của chương trình. Khi xử lý một chương trình người làm luôn cần phải lưu trữ một giá trị nào đó để tính toán hoặc để so sánh…. Mỗi biến được đặc trưng bằng một cái tên, biến không có sẵn trong chương trình muốn sử dụng chúng thì phải khai báo bằng một trong các cách thức sau: Dim/Static/Public/Global <Tên biến> As <Kiểu giá trị> Khai báo với từ khóa Dim, Static dùng để khai báo cho những biến cục bộ.
Khai báo với từ khóa Public, Global dùng để khai báo biến dùng chung cho toàn bộ chương trình. Hằng Hằng dùng để chứa những dữ liệu tạm thời nhưng không thay đổi trong suốt thời gian chương trình hoạt động. Sử dụng hằng số làm chương trình sáng sủa, dễ đọc nhờ những tên gợi nhớ thay vì các con số. VB cung cấp một số hằng định nghĩa sẵn, nhưng ta cũng có thể tự tạo hằng.
Khai báo hằng: [Public| Private] const <Tên hằng> As <Kiểu dữ liệu>=<Biểu thức> 1. Các kiểu dữ liệu cơ bản trong VB6.0 Khi khai báo một biến trong chương trình tức là chúng ta đã tạo ra một khoảng bộ nhớ để lưu giá trị đó, khoảng bộ nhớ đó lớn hay nhỏ tùy thuộc vào biến đó được khai báo theo kiểu gì. Khi khai báo điều quan trọng là xác định biến cho phù hợp với các giá trị đưa vào Các kiểu dữ liệu chuẩn như: String: Là dữ liệu kiểu chuỗi, khoảng giá trị có thể lên đến hai tỷ ký tự. Nhận biết biến này bằng tiếp vĩ ngữ $.
Byte: Là các số nguyên dương, khoảng giá trị từ 0 đến 255. Long: Là các số nguyên, khoảng giá trị từ –2. Nhận biết biến này bằng dấu & ở cuối. Integer: Là các số nguyên.
Nhận biết dấu này bằng dấu % ở cuối. Single: Là các số có dấu chấm thập phân. Nhận biết dấu này bằng dấu ! ở cuối. Double: Là các số có dấu chấm thập phân.
Nhận biết bằng dấu # ở cuối. Date: Lưu trữ thông tin về thời gian. Nhận biết bằng dấu # ở đầu và ở cuối. Boolean: Biến logic có giá trị là true, hay false dùng để gán giá trị trong các câu lệnh điều kiện.
CẤU TRÚC ĐIỀU KHIỂN 1. Cấu trúc chọn Câu lệnh If…Then If <biểu thức Logic> then <lệnh> End if 9 c Câu lệnh If…Then…Else If <biểu thức Logic> then <lệnh 1> ………. Else <lệnh n> End If Câu lệnh Select …Case Cú pháp: Select Case <Biến hay biểu thức điều kiện> Case <giá trị 1> <câu lệnh 1> ………. Case <giá trị n> <câu lệnh n> Case else <câu lệnh n+1> End select 1.
Cấu trúc lặp 1. Câu lệnh Do…Loop Thi hành một khối lệnh với số lần lặp không định trước.Trong đó, một biểu thức điều kiện dùng để so sánh để quyết định vòng lặp có tiếp tục không. Điều kiện phải quy về False (0), hoặc True (Khác 0). Cú pháp 1: Lặp khi điều kiện là true Do While <Điều kiện> <Khối lệnh> [Exit do] <Khối lệnh> Loop Cú pháp 2: Vòng lặp luôn có ít nhất một lần thi hành khối lệnh 10 c Do <Khối lệnh> [Exit do] <Khối lệnh> While loop <Điều kiện> Cú pháp 3: Lặp trong khi điều kiện là false Do Until <Điều kiện> <Khối lệnh> [Exit do] <Khối lệnh> Loop Cú pháp 4: Lặp trong khi điều kiện là False và có ít nhất một lần thi hành khối lệnh.
Do <Khối lệnh> [Exit do] <Khối lệnh> Loop Until <Điều kiện> 1. Câu lệnh For…Next Biết trước số lần lặp. Ta dùng biến đếm tăng dần hoặc giảm dần trong vòng lặp. Cú pháp: For counter=Start to End [Step step] <câu lệnh> [Exit For] <câu lệnh> Next counter Trong đó: - Counter: là biến đếm kiểu số nguyên.
- Start: là giá trị bắt đầu của Counter. 11 c - End: là giá trị kết thúc của Counter. - Step: bước nhảy của mỗi lần lặp, nếu không có giá trị này thì mặc định bước nhảy bằng 1. Câu lệnh For Each…Next Tương tự vòng lặp For … Next, nhưng nó lặp khối lệnh theo số phần tử của một tập các đối tượng hay một mảng thay vì theo số lần lặp xác định.
Vòng lặp này tiện lợi khi ta không biết chắc có bao nhiêu phần tử trong tập hợp. Cú pháp For Each <Phần tử n> In <Nhóm> <Khối lệnh> Exit For <Khối lệnh> Next <Phần tử> 1. Câu lệnh Goto Được dùng cho bẫy lỗi On Error Goto vbErrorHandler Khi có lỗi chương trình sẽ nhảy đến nhãn vbErrorHandler và thi hành các dòng lệnh ở đó. GIỚI THIỆU SƠ LƯỢC CÁC KỸ THUẬT KẾT NỐI CSDL + DAO (Data Acess Objects): Là kỹ thuật kết nối CSDL riêng của Microsoft.
Kỹ thuật này chỉ dùng với Jet Database Engine. Ưu điểm của kỹ thuật này là tính dễ dùng, nhanh chóng và tiện lợi. Tuy nhiên DAO chỉ có thể liên kết được với hệ quản trị CSDL Microsoft Acess. + ODBC (Open Database Connectivity): Được thiết kế để cho chương trình kết nối với nhiều loại CSDL mà chỉ dùng một phương cách duy nhất.
Nó giúp cho lập trình viên chỉ sử dụng một phương thức duy nhất để truy cập vào các hệ quản trị CSDL. Hơn thế, khi chúng ta nâng cấp lên hệ quản trị CSDL cao hơn (Ví dụ: nâng cấp từ Acess lên QLServer) thì sự sửa đổi trong chương trình sẽ rất ít. 12 c + RDO (Remote Data Object): Được thiết kế để giải quyết những khó khăn của ODBC. Cách lập trình với RDO đơn giản như DAO, nhưng khả năng của nó thì như ODBC.
RDO cho phép nhiều chương trình kết nối với CSDL. Tuy nhiên RDO không được sử dụng nhiều + ADO (ActiveX Data Objects): ADO cho phép ta làm việc với mọi loại nguồn dữ liệu (data sources), không nhất thiết phải là CSDL Microsoft Acess hay SQLServer. Data sources có thể là danh sách các địa chỉ Email, hay một file text trong do mỗi hàng là một record gồm những fields ngăn cách bởi các dấu phẩy hay dấu tab. Nếu trong DAO ta dùng thẳng tên CSDL Microsoft Acess thì trong ADO cho ta nối với một CSDL qua một connection bằng cách chỉ định một Connection String.
Giới thiệu kỹ thuật lập trình ADO ADO là một kỹ thuật lập trình kết nối cơ sở dữ liệu phát triển gần đây nhất của VB. Không giống như những kỹ thuật truy nhập CSDL khác của VB (RDO, DAO) ADO có thể cung cấp cho người lập trình nhiều chọn lựa trong việc truy xuất dữ liệu. Mặt khác, ADO không truy cập trực tiếp đến một cơ sở dữ liệu, ADO làm việc với tầng thấp hơn là OLEDB Provider và OLEDB Provider này có nhiệm vụ truy xuất đến nhiều loại dữ liệu khác nhau, sau đó trình bày CSDL ngược lại đến ADO. Thuận lợi nhất của ADO là chúng ta có thể thay đổi OLE DB provider.
Kỹ thuật ADO cho phép truy cập dữ liệu thông qua 2 cách: Data controls (các điều khiển dữ liệu): Là một điều khiển có chức năng giao tiếp, cập nhật CSDL. Để nhìn thấy dữ liệu ta phải dùng một số control thông thường khác (textbox, checkbox, label,…) thiết lập một số thuộc tính và kết buộc dữ liệu _databinding đến data control này. Nếu không dùng sẵn các data control của VB thì ta vẫn có thể truy xuất dữ liệu bằng cách tạo một tham chiếu đến ADO - một tập hợp các đối tượng mới được tạo ra này sẽ luôn có sẵn trong chương trình khi cần dùng đến. Do đó bạn có thể thao tác dữ liệu trực tiếp từ code chương trình (dùng các phương thức và thuộc tính do các đối tượng này cung cấp) mà không phải dùng bất kỳ data control nào.