Định nghĩa và sử dụng kiểu dữ liệu mới Kiểu bản gh

Một phần của tài liệu Thực hành với visual basic (Trang 26)

Thực hành: Định nghĩa kiểu dữ liệu mới để biến thuộc kiểu dữ liệu này có thể lưu trữ được các thông tin về một cuốn sách (Tên sách, Tên tác giả, năm xuất bản, giá).

Hướng dẫn: Kiểu dữ liệu mới nên định nghĩa trong Module, còn nếu định nghĩa trong

Formthì chỉ có thể ở dạngPrivate(tức chỉ sử dụng cục bộ trongForm) mà không thể

ở dạngPublic(Sử dụng trong mọiForm).

Minh hoạ: Tạo module mới: Vào menuProject → Add Module. Lưu module này với tên :modDataTypes.bAs

Gõ đoạn lệnh dưới đây vào trong module vừa tạo: Option Explicit

'/// Định nghĩa kiểu dữ liệu mới : KieuSach

Public TypeKieuSach TenSachAsString TacGiaAsString NamXBAsInteger

GiaAsSingle End Type

Gõ đoạn lệnh dưới đây trong thủ tụcForm_Load: Option Explicit

DimSachAsKieuSach

DimKhoSach(100)AsKieuSach

Private SubForm_Load()

Sach.TenSach = "Lập trình VB thật là đơn giản" Sach.TacGia = "Software Team - UTEHY"

Sach.NamXB = 2006 Sach.Gia = 45000

'/// Gán một số giá trị cho phần tử có chỉ số là 1 cho mảng KhoSach(1).TenSach = "Bài tập Visual Basic"

KhoSach(1).TacGia = "Software Team - UTEHY" KhoSach(1).NamXB = 2006

KhoSach(1).Gia = 34500

MsgBox Sach.TenSach & " giá : " & Sach.Gia

MsgBox KhoSach(1).TenSach & " Giá : " & KhoSach(1).Gia End sub

Ghi chú:

• Đoạn chương trình trên định nghĩa kiểu bản ghi (tương tự nhưRecordtrong PAscal haystructtrong C/C++) bằng câu lệnhType, từ khoáPublicđứng trước để chỉ ra rằng kiểu dữ liệu này có thể được dùng trong mọiForm, mọi

module. Còn nếu sử dụng từ khoáPrivatethay vìPublicthì kiểu dữ liệu mới này chỉ được sử dụng trong chính module đó mà thôi.

• Đoạn code tiếp theo khai báo 2 biến thuộc kiểu dữ liệu vừa định nghĩa. Một là biến thông thường, biến thứ hai là một mảng.

? Kiểu dữ liệu mảng thường được thao tác kết hợp với vòng lặp. Các ví dụ thêm về mảng kết hợp với vòng lặp sẽ được đề cập ở các phần tiếp sau.

Một phần của tài liệu Thực hành với visual basic (Trang 26)

Tải bản đầy đủ (PDF)

(141 trang)