Bài giảng Visual Basic 2

Tổng số tiết: 90 tiết

Lý thuyết: 30 tiết

Bài tập: 15 tiết

Thực hành: 45 tiết

Sinh viên cần phải được học trước các môn

Visual Basic 1

Hệ quản trị CSDL (Access hoặc SQL Server)

Câu lệnh SQL để truy vấn dữ liệu

Thi kết thúc môn học bằng hình thức thi viết hoặc thi thực hành.

 

ppt72 trang | Chia sẻ: gaobeo18 | Lượt xem: 1110 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Visual Basic 2, để xem tài liệu hoàn chỉnh bạn click vào nút TẢI VỀ ở trên
unt (trị Long Integer): số lượng mẩu tinBOF: Trước mẩu tin đầuEOF: Sau mẩu tin cuốiEditMode: chỉ trình trạng của mẩu tin hiện hành, có các giá trị sauadEditNone	0	Bình thườngadEditInProgress	1	Đang sửa đổi chưa cập nhậtadEditAdd	2	Đang thêm mới chưa cập nhậtadEditDelete	3	Đánh dấu hủy chưa cập nhậtRECORDSET (TT)Lập trình Visual Basic 2*Di chuyển mẩu tin hiện hành.MoveFirst.MoveLast.MoveNext.MovePrevious.Move numRec [, startPos]numRec: Là số mẩu tin sẽ nhảy qua tính từ vị trí startPosstartPos: Lấy vị trí hiện hànhRECORDSET (TT)Lập trình Visual Basic 2*Duyệt qua các mẩu tin của một bộ mẩu tin (Recordset).MoveFirstDo While Not .EOF	các xử lý trên mẩu tin hiện hành	.MoveNext	LoopHoặcFor i=1 to .RecordCount	 các xử lý trên mẩu tin hiện hành	 .MoveNextNextRECORDSET (TT)Lập trình Visual Basic 2*Thêm mới một mẩu tin (AddNew):	“Insert into TenTable values ('" & gtri1 & "‘, '" & gtri2 & "‘.. '" & gtri_n & "')“	ví dụ:	Dim as .Recordset	Set = New ADODB.Recordset	rs.Source = “Insert into TenTable values ('" & gtri1 & "‘,& gtri_n & "‘)“ rs.ActiveConnection = cn rs.OpenRECORDSET (TT)Lập trình Visual Basic 2*Sửa mẩu tin (Update):“Update TenTable set TenField1='" & gtr1 & "', TenField2='" & gtr2 & "‘, TenField_n='" & gtri_n& "' where TenField chứa điều kiện sửa = '" & giá trị điều kiện cần sửa & “’ “Ví dụ:	Dim as .Recordset	Set = New ADODB.Recordset	 rs.Source = 	“Update TenTable set TenField1='" & gtr1 & "', 	TenField2='" & gtr2 & "‘, TenField_n='" & gtri_n& "' where 	TenField chứa điều kiện sửa = '" & giá trị điều kiện cần sửa 	& "‘ “ rs.ActiveConnection = cn rs.OpenRECORDSET (TT)Lập trình Visual Basic 2*Xóa mẩu tin (Delete):“Delete * from TênTable where TenField chứa điều kiện xóa = '" & giá trị điều kiện cần xóa & “’ “Ví dụ:	Dim as .Recordset	Set = New ADODB.Recordset	 rs.Source = 	“Delete * from TênTable where TenField chứa điều kiện 	xóa = '" & giá trị điều kiện cần xóa & “’ “ rs.ActiveConnection = cn rs.OpenChương 3: CÁC ĐIỀU KHIỂN DỮ LIỆULập trình Visual Basic 2*DATACOMBO VÀ DATALIST:Mục đích sử dụng:comboDatalistCÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Khởi tạo DataCombo và DataList:CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Các thuộc tính của DataCombo và DataList:Với Bookmark của RecordSet có chức năng lưu trữ thông tin vị trí của mẩu tin hiện hành.Tên thuộc tínhÝ nghĩaRowSourceNguồn dữ liệu để các điều khiển (DataCombo và DataList) hiển thị, từ RecordSet.ListFieldTên trường trên RecordSet mà ta muốn hiển thị ở phần liệt kê của điều khiểnSelectedItemTrả về Bookmark của RecordSet (dùng để hiển thị thêm thông tin)CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Code minh họa tạo DataCombo:	Dim as .Recordset	Set = New .Recordset	.Open [Source],[Connection],[Type],[Lock],[Option]	Set .RowSource = .	 .ListField = “Tên trường“Code hiển thị thông tin trường khác tương ứng trên một bộ mẩu tin lên TextBox khi ta chọn một trường từ DataCombo:	Viết code ở sự kiện Click vào vùng hiển thị của điền khiển	nếu .SelectedItem > 0 thì	 .Bookmark = . SelectedItem	.Text = .(“Tên_trường)Chương 3: CÁC ĐIỀU KHIỂN DỮ LIỆULập trình Visual Basic 2*COMBOBOX:Mục đích sử dụng:CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Viết Code cho Combobox:	Set rs = New ADODB.Recordset	rs.Source = "select * from Tên_Table “	rs.ActiveConnection = cn	rs.Open	Do While Not rs.EOF	Tên_Combobox.AddItem (rs!Tên_Field)		rs.MoveNext	Loop	CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*LISTVIEW:Mục đích sử dụng:CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Cách tạo ListView:Bước 1:CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Bước 2:CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Bước 3: Thiết lập các thuộc tính cho ListViewCÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Bước 4: Tạo các cột và định dạngCÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Viết Code cho ListView:	Set rs = New ADODB.Recordset	rs.Source = "select * from Tên_Table “	rs.ActiveConnection = cn	rs.Open	Dim Tên biến LV As ListItem	Tên_Điều_Khiển_ListView.ListItems.Clear	Do While Not rs.EOF	Set Tên_biến_LV = Tên_Điều_Khiển_ListViewi.ListItems. 	Add(, , rs!Tên_Field)	Tên_biến_LV.SubItems(1) =rs!Tên_Field		rs.MoveNext	Loop	CÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Lập trình Visual Basic 2*Sự kiện ItemClick của ListView:	Tên_điều_Khiển (TextBox)= Item.TextKIỀM TRA LỖI NHẬP LiỆU:	On Error GoTo THOAT 	Exit Sub	THOAT: 	MsgBox “Thông báo”	CÁC KỸ THUẬT LẬP TRÌNH CSDLLập trình Visual Basic 2*Đối tượng ProgressBarSử dụng trong bộ định thời gian (Timer )i = Int(i) + 1 Tên_ProgressBar = Tên_ProgressBar + 1 If i = 100 Then Tên_Form(cần hiển thị).Show Unload Form2 	End If 	CÁC KỸ THUẬT LẬP TRÌNH CSDL (TT)Lập trình Visual Basic 2*Đối tượng TimerKỹ Thuật Form Login	Lập trình Visual Basic 2*Chương 4: XÂY DỰNG CÁC ỨNG DỤNGCÁCH TỔ CHỨC MỘT ỨNG DỤNGXỬ LÝ CÁC LỖITHIẾT KẾ GIAO DIỆNCÁCH TỔ CHỨC MỘT ỨNG DỤNGLập trình Visual Basic 2*Để thuận tiện việc theo dõi, tìm kiếm:DATAFORMSREPORTSGRAPHICSMODULESỨNG DỤNGCÁCH TỔ CHỨC MỘT ỨNG DỤNG (TT)Lập trình Visual Basic 2*DATA chứa các tập tin CSDL (đối với nguồn Access)FORMS chứa các form trong ứng dụngREPORTS chứa các báo biểu của ứng dụngGRAPHICS chứa các tập tin đồ họaMODULES chứa các tập tin moduleTập tin ứng dụng (*.vbp) được trong thư mục ỨNG DỤNG	XỬ LÝ CÁC LỖI (BẪY LỖI)Lập trình Visual Basic 2*Lỗi khóa chính nhận giá trị Null:Trước khi thêm một mẩu tin mới ta phải kiểm tra trường khóa chính không nhận giá trị giá trịn rỗng.Code:If giá_trị_ = “” then	thông_báo “giá trị khóa chính phải khác rỗng”End If XỬ LÝ CÁC LỖI (TT)Lập trình Visual Basic 2*Lỗi trùng khóa chính:Khi ta thêm một mẫu tin mới thì giá trị khoá của mẩu tin mới đã tồn tại trong CSDLKỹ thuật:	Set rs = New ADODB.Recordset	rs.Source= "select * from Table where khoa='" & giá_trị_khóa_mới & "'“	rs.ActiveConnection = cn	rs.Open 	If Not rs.EOF() Then	 “Trùng khóa chính”	End IfXỬ LÝ CÁC LỖI (TT)Lập trình Visual Basic 2*Lỗi không tồn tại khóa ngoại:Khi ta thêm một mẫu tin mới thì giá trị khoá ngoại của mẩu tin mới không tồn tại ở bảng 1 trong CSDLKỹ thuật:	Set rs = New ADODB.Recordset	rs.Source= "select * from Table where khoa='" & giá_trị_khóa_mới & "'“	rs.ActiveConnection = cn	rs.Open 	If rs.EOF() Then	 “không tồn tại khóa ngoại ở bảng 1”	End IfXỬ LÝ CÁC LỖI (TT)Lập trình Visual Basic 2*Các lỗi khác:Khi ta nhập liệu không đúngKỹ thuật:	 	On Error GoTo THOAT 	Exit Sub	THOAT: 	MsgBox “Thông báo”THIẾT KẾ GIAO DIỆNLập trình Visual Basic 2*Khi thiết kế giao diện màn hình cho các ứng dụng chúng ta cần chú ý đến 3 yếu tố sau:Giao diện thân thiệnGiao diện hài hòaThao tác thuận tiệnTHIẾT KẾ GIAO DIỆNLập trình Visual Basic 2*Màn hình thông báoIconcommandThôngbáoTHIẾT KẾ GIAO DIỆNLập trình Visual Basic 2*Thiết kế form đơnTHIẾT KẾ GIAO DIỆNLập trình Visual Basic 2*Thiết kế form đơn képLập trình Visual Basic 2*Chương 5: BÁO BIỂU (REPORT)DATAREPORT DESIGNERMỘT SỐ KỸ THUẬT KHÁCDATAREPORT DESIGNERLập trình Visual Basic 2*Các thành phần chính của báo biểuReport header: Phần tiêu đề đầu của báo biểuReport footer: Phần tiêu đề cuối của báo biểuPage header: Tiêu đề đầu trangPage footer: Tiêu đề cuối trangGroup header: Tiêu đề đầu của nhómGroup footer: Tiêu đề cuối của nhómDetails: Chứa nội dung chi tiết của báo biểuDATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Cấu trúc của báo biểuDATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Các đối tượng của báo biểuĐỐI TƯỢNGÝ NGHĨARptLabelNhãn RptTextboxHộp văn bản nối kết với trường dữ liệuRptImageHiện thị hình ảnhRptLineVẽ đường thẳngRptShapeVẽ các đa giácRptFunctionTính toán DATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Các thuộc tính chính của báo biểuName: Tên báo biểuCaption: Tiêu đề của cửa sổ báo biểuDataSource: Nguồn dữ liệu (tên của DataEnvironment)Datamember: Tên của command tạo cho báo biểuDATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Tạo một command trên DataEnvironment chứa các trườngCác thuộc tính của CommandConnectionName: Tên đối tượng kết nối CSDLCommandType: Gồm 3 tham số sau.abCmdText: Chứa câu truy vấn SQLabCmdTable: Chứa tableabCmdStoredProc: Chứa các thủ tục và hàm DATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Tạo dữ liệu cho báo biểuĐể tạo số liệu cho báo biều thì phải DataEnvironmentĐối tượng Connection:	ConnectionSource: tên CSDL cần kết nốiDATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Tạo nhóm trên báo biểuDATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Đưa trường tính toán vào cùng GroupHeader và FooterDùng đối tượng RptFunction để đưa trường tính toánCác thuộc tính chính của đối tượng RptFunction Name: Tên đối tượngDatamember: Tên của Command chứa trường cần tính toánDatafield: Tên trường muốn tính toánFunctionType: Loại hàm tính toánDATAREPORT DESIGNER (TT)Lập trình Visual Basic 2*Các FunctionType của đối tượng RptFunction TÊNÝ NGHĨArptFuncSumTổng các Datafield kiểu sốrptFuncAveGiá trị trung bình các Datafield kiểu sốrptFuncMinGiá trị nhỏ nhất của Datafield kiểu sốrptFuncMaxGiá trị lớn nhất của Datafield kiểu sốrptFunRcntĐếm số mẩu tinrptFunVcntĐếm số mẩu tin trong vùng không chứa trịMỘT SỐ KỸ THUẬT KHÁCLập trình Visual Basic 2*Đưa số trang và ngày tháng vào báo biểuNhất chuột phải vào báo biểu\ chọn Insert ControlMỘT SỐ KỸ THUẬT KHÁC (TT)Lập trình Visual Basic 2*Ý nghĩa của các điều khiển trênTên_Label.caption=“% Trị”TÊNÝ NGHĨATRỊCurrent Page NumberSố trang hiện hành%pTotal Number of PageTổng số trang %PCurrent Data (Short Format)Ngày hiện hành (dạng ngắn)%dCurrent Data (Long Format)Ngày hiện hành (dạng đầy đủ)%DCurrent Time (Short Format)Giờ hiện hành (dạng ngắn)%tCurrent Time (Long Format)Giờ hiện hành (dạng đầy đủ)%TReport TitleTiêu đề báo biểu%iMỘT SỐ KỸ THUẬT KHÁC (TT)Lập trình Visual Basic 2*Thi hành một báo biểu:Tên_báo_biểu.Show()MỘT SỐ KỸ THUẬT KHÁC (TT)Lập trình Visual Basic 2*Tạo báo biểu có tham số:str = SQL + với tham số cần in báo biểuTên_DataEnvironment.Commands(index).CommandText = strTên_Report.ShowStr thuộc kiểu stringCÁC ĐIỀU KHIỂN DỮ LIỆU (TT)Bài tập ứng dụng:Quản lý Thư việnQuản lý sinh viênQuản lý hàng hóaQuản lý nhân viênQuản lý học sinhDanh sách liên kết đối xứng*Lương Văn VânThank You !

File đính kèm:

  • pptbai giang vb2 (105T).ppt
Bài giảng liên quan