1. Trang chủ
  2. » Cao đẳng - Đại học

Visual Basic

140 18 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

 Còn đối với biểu mẫu, nó chỉ bắt đầu được sự kiện bàn. phím mỗi khi được kích hoạt và không có bất kỳ điều khiển khác có Focus[r]

(1)(2)

NỘI DUNG

Tổng quan Visual Basic

Cách biên tập thực chương trìnhGiới thiệu Form Control

Hằng, biến, kiểu liệuCấu trúc điều khiển

Tạo Object VB

Menu cách tạo Menu

Các hộp thoại dùng chungTập tin

Đồ hoạ

(3)

Tài liệu tham khảo

Giáo trình Visual Basic, Phạm Thuỳ Nhân

Nhà xuất Đồng Nai, 1999

Kỹ xảo lập trình VB6, Phạm Hữu Khang Nhà

xuất Lao Động Xã Hội

Giáo trình Visual Basic APTECH

Kỹ lập trình Visual Basic 6.0, Nguyễn

(4)

Chương 1: Tổng quan Visual Basic

I. Giới thiệu

(5)

I - Giới thiệu

 VB6.0 phiên mạnh ngôn ngữ lập

trình Visual basic

 Dễ dàng lập trình ứng mơi trường

windows

 Với VB6.0, ta :

 Khai thác mạnh điều khiển mở

(6)

 Làm việc với điều khiển mới: Monthview,

DataTimePiker, ToolBar, ImageCombo,

FlatScrollBar.

 Làm việc với DHTML.

 Làm việc với sở liệu.

 Các bổ sung lập trình hướng đối tượng

(7)

II - Phiên VB

(8)

III - Cài đặt

 Sử dụng file setup.

 Nên cài đặt thêm trợ giúp MSDN  Yêu cầu tối thiểu:

 Microsoft Window 95 trở lên Microsoft

Window NT Workstation 4.0 trở lên.

 Tốc độ CPU 66MHz trở lên.

 Màn hình VGA hình có độ phân giải cao

được hổ trợ Microsoft Window

 Yêu cầu 16 MB RAM cho Microsoft Window 95

(9)

Chương II – Biên tập thực chương trình

I Khởi động hình VB

II Cách thiết kế Form

III Cách viết mã vào chương trình

(10)

I - Khởi động hình VB

1 Khởi động VB 6.0

 Start  Programs Microsoft Visual Basic 6.0 

Microsoft Visual Basic 6.0

(11)

1- Click Stander

exe

(12)

2 Tìm hiểu mơi trường tích hợp IDE – Integrated Development Environment

 Thanh Standard:Thanh công cụ chuẩn

I - Khởi động hình VB

(13)

I - Khởi động hình VB

 Thanh Edit: sử dụng viết code

Thanh Form Editor: di chuyển, xếp điều khiển Thanh Form Editor: di chuyển, xếp điều khiển

(14)

I - Khởi động hình VB

 Hộp cơng cụ Toolbox: chứa điều khiển dùng

(15)

 Project Explorer: Quản lý định hướng đề án

 Cửa sổ Properties: xem, sửa đổi giá trị thuộc tính

của điều khiển

(16)

I - Khởi động hình VB

(17)

II – Cách thiết kế Biểu mẫu (form)

1 Mở dự án mới:

 File  New Project

2 Thêm biểu mẫu vào dự án:

 Biểu mẫu dạng MDI:

 Format  Add MDI Form : Thêm form chính  Format  Add Form: Thêm form con

 Biểu mẫu dạng thường:

 Format  Add Form

3 Thêm module vào dự án

(18)

II – Cách thiết kế Biểu mẫu (form)

4 Thêm điều khiển vào biểu mẫu

 Chọn điều khiển Toolbox  Kéo vẽ vào Form

 Thiết đặt thuộc tính cần thiết cho điều khiển

(19)

III – Thiết kế mã chương trình

 View  code

 Chọn tên điều khiển

(20)

IV – Biên dịch

 Biên dịch đề án thành tập tin thực thi:

 Project  Project Properties

Loại đề án

(21)

IV – Biên dịch

(22)

Chương III

Giới thiệu Form control

I Form, thuộc tính kiện bản

II Control, thuộc tính kiện bản

 Label  Textbox

 Commanbutton

 Checkbox Option button  Combo box Listbox

(23)

I – Form, thuộc tính kiện

 Sự kiện:

 Load(): Xảy form load  Click(): Xảy form click

 Activate(): Xảy form kích hoạt  DblClick(): Xảy nhắp double lên form

 Thuộc tính:

 Caption: Tiêu đề form

 BorderStyle: Thiết đặt đường viền cho form

(24)

I – Form, thuộc tính kiện

 Thuộc tính (tt):

 Backcolor: màu

(25)

II – Control, thuộc tính kiện

 Điều khiển Label

 Cho phép người dùng hiển thị ký tự biểu mẩu  Nam : tên điều khiển

Caption : hiển thị chuổi ký tự

 Font, Fore color, BackStyle, BackColor: font ký tự,

màu ký tự, nhãn suôt không ?, màu nền

 Điều khiển khung Frame

 Giúp bố trí giao diện sáng, rõ nét, làm

(26)

 Điều khiển Textbox

 Giúp người dùng nhập thông tin vào, xuất thông tin,…  Maxlength: số ký tự tối đa

Text: dùng để nhận xuất thông tin

Locked: cho phép thay đổi/khơng thuộc tính textPasswordChar: quy định dạng hiển thị ký tựMultiline: hiển thị dòng hay nhiều dòng

SelLength, Seltart, SelText: số ký tự chọn, vị trí ký tự

bắt đầu chọn, chuyển ký tự chọn

(27)

II – Control, thuộc tính kiện

 Điều khiển Command Button

 Nút lệnh

Caption: hiển thị ký tự nút lệnhDefault: nhập giá trị từ phím EnterCancel: Nhận gía trị từ phím Esc

Enabled: cho phép nút có hiệu lực hay không ?  Name: tên nút lệnh

(28)

 Điều khiển Listbox

 Cho phép hiển thị đề mục để lựa chọn  Name: tên listbox

 List: liệu listbox

 MultiSelect: Thuộc tính chọn : 1/nhiều

 Thêm đề mục vào listbox: additem item [,index]  Xoá đề mục: box.remove index

 Xoá tất đề mục : box.clear  Nhận giá trị đề mục : thuộc tính text

(29)

 Điều khiển combo box

 Được xem tích hợp text box listbox  Style: Dạng bombo box

Kiểu Giá trị Hằng

Drop-down combo box VbComboDropDown Simple combo box VbComboSimple

Drop-down list box VbComboDropList

(30)

 Điều khiển Checkbox

 Cho biết mục có chọn hay khơng ?

Private Sub Check1_Click()

If Check1.Value = vbChecked Then Text1.Font.Bold = True

Else

Text1.Font.Bold = False End If

End Sub

(31)

 Điều khiển Option button

 Tương tự Check box nhóm

có mẩu chọn

Điều khiển Hscrollbar

 Có thể dùng làm thiết bị nhập, thiết bị định cho số

lượng, vận tốc

Large change : xác định khoảng thay đổi ấn chuộtSmall change : xác định khoảng thay đổi ấn chuột

cuối cuộn

Value: trả giá trị điều khiển [min, max]

(32)

Private Sub HScroll1_Change()

Text1.FontSize = HScroll1.Value

Text1.Height = Text1.Height + HScroll1.Value Text1.Width = Text1.Width + HScroll1.Value End Sub

Điều khiển Vscrollbar

 Tương tự Hscrollbar

(33)

Chương IV : Hằng, biến, kiểu liệu

I Cách khai báo biến, sử dụng biến

II Tầm vực thời gian sống biến

III Cách định nghĩa sử dụng

(34)

I- Biến cách sử dụng

 Là vùng nhớ đặt tên, dùng để lưu trữ liệu

trung gian trình hoạt động

Khai báo biến

Cú pháp : [ Dim | Private | Static | Public ] VarName As DataType

 VD: Dim i as integer

Khai báo tường minh

(35)

 Ví dụ:

 Private iNumVal As Integer

 Private iAvgVal As Integer, dInputval As Double  Static sCalcAverage As Single

 Dim strInputMsg As String

 Lưu ý:

Để yêu cầu khai báo tường minh ta check vào mục Require Variable Declaration mục Option

Quy định cách đặt tên biến:

 Tên phải bắt đầu chữ dấu gạch  Tên khơng có dấu câu kí tự đặc biệt

(36)

 Tên phải (không trùng với tên nào) phạm vi hoạt động

 Tên khơng dài 255 kí tự

 Tên khơng phân biệt chữ hoa chữ thường  Ví Dụ:

Cách đặt tên biến không đúng

1tuan

tien.cua.toi so luong

Cách đặt tên biến đúng

icount, number

(37)

 Lưu ý:

 Bạn nên đặt tên biến kèm theo ý nghĩa loại biến ký tự đầu tên biến

 icount ‘biến kiểu integer

(38)

II - Tầm vực thời gian sống biến

 Public: biến khai báo với từ khoá

public module Pas có tác dụng trong tồn chương trình

 Private: biến khai báo với private

trong module pas có tác dung trong module.pas

(39)

Biến toàn cục

khai báo với từ khố public có tác dụng

tồn CT

 VD : public icount as integer

Biến cấp module

 Được khai báo với từ khóa private, dim module  Chỉ truy cập module

 Vd: dim i as integer

private ngaythang as date

 Tuy nhiên, ta khai báo biến kiểu pubic

module Khi truy cập module ngoài module

(40)

Biến cục động

 Được khai báo thủ tục có thời gian sống trùng

với thời gian sống thủ tục

 VD:

Sub PrintStr()

Dim Str As String ' Str biến cục động.

End Sub

Biến cục tĩnh

Được khai báo thủ tục với từ khố static có thời

gian sống biến module

(41)

 Mục đích: sử dụng để ngăn ngừa thủ

tục khởi tạo lại giá trị, thường sử dụng trong kiện click chuột

(42)

III - Hằng cách sử dụng

 Hằng chứa giá trị tạm, không thay đổi

suốt trình hoạt động

 Khai báo:

 [<public| private>]const <tên hằng> [As <kiểu

liệu>] = <biểu thức>

 VD:

 Const Pi=3.1416

(43)

IV – Các kiểu liệu bản

1 Kiểu số nguyên:

 Gồm: Byte, Integer, Long

 Phép toán: +, - ,*, / (chia lấy phần nguyên),

/ (chia lấy phần dư)

2 Kiểu Boolean: (True /False)

3 Kiểu số thực:

 Gồm: Single, Double, Currency  Hàm làm tròn Round :

(44)

4 Kiểu Date:

 Kiểu ngày, giờ

 VD:#11/11/1900#

#10/3/2005 12.20 AM#

5 Kiểu xâu ký tự - String

 Khai báo:

 Độ dài cố định: Dim Name as String * 50  Không cố định: Dim Name as String

(45)

IV – Các kiểu liệu bản

5 Kiểu xâu ký tự - String (tt)

 Hàm thông dụng

Len(str) : Lấy chiều dài chuỗi str

Mid(str, start, [length]): Trích chuỗi từ chuỗi gốcLeft(str, [length]): Trích chuỗi từ bên trái chuỗi strRight(str, [length]): …… phải … str

 InStr([start, ] string1, string2[,compare]): Tìm chuỗi chuỗi gốc - trả vị trí tìm thấy

 Start: Vị trí bắt đầu việc tìm kiếm  String1: Chuỗi để so sánh

(46)

IV – Các kiểu liệu bản

 Compare:

 0 (vbBinaryCompare): So sánh xác  1 (vbTextCompare): Tương đối

 VD:

Dim SearchString, SearchChar, MyPos SearchString ="XXpXXpXXPXXP"

SearchChar = "P"

MyPos = Instr(4, SearchString, SearchChar, 1) MyPos = Instr(1, SearchString, SearchChar, 0) MyPos = Instr(SearchString, SearchChar)

(47)

IV – Các kiểu liệu bản

5 Kiểu xâu ký tự - String (tt)

 Str: Chuyển đổi song kiểu chuỗi  Val: Chuyển đổi sang kiểu số

6 Kiểu Object

 Chứa địa byte để trỏ đến đối tượng  Cách dùng:

 Dim Obj as Object

(48)

IV – Các kiểu liệu bản

8 Kiểu Variant (mặc định)

 Kiểu tổng quát, chứa kiểu khác (trừ kiểu

chuỗi có độ dài cố định)

 Hàm kiểm tra kiểu: VarType TypeName

Hằng giá trị

 vbEmpty

 vbNULL

 vbInteger

 vbLong

 vbSingle

(49)

IV – Các kiểu liệu bản

 vbCurrency 6

 vbDate 7

 vbString 8

 vbObject 9

 vbError 10

 vbBoolean 11

 vbVariant 12

 vbByte 17

(50)

IV – Các kiểu liệu bản

9 Kiểu mảng

 Là dãy biến có tên, kiểu  Mảng có chiều dài cố định:

 Dim Mang(14) As Integer  14  Public Mang(20) As Double  20

 Dim Mang ( 10 to 24) As Integer  10 24  Hàm Unbound: Trả biên

 Hàm Lbound: Trả biên

(51)

IV – Các kiểu liệu bản

9 Kiểu mảng (tt)

 Mảng động:

 Khai báo: Dim MangDong()

 Cấp phát: ReDim [Preserve] MangDong(kích thước)  Ví dụ:

 ReDim MangDong(10)

(52)

IV – Các kiểu liệu bản

9 Kiểu mảng (tt)

 Một số tính khác

 Sao chép mảng:

Sub ByteCopy (Old() as Byte, New() as Byte) New = Old

End sub

 Trả mảng từ hàm

Public Function Ham(b as Byte) as Byte() Dim X(2) as Byte

(53)

IV – Các kiểu liệu bản

 Hàm thủ tục

 Cú pháp thủ tục:

[Private| Public|Static] Sub <tên thủ tục>(tham số) <lệnh>

End Sub

 Cú pháp hàm:

[Private| Public|Static] Function <tên hàm>(tham số) as <kiểu liệu>

(54)

IV – Các kiểu liệu bản

 Hàm thủ tục (tt)

 Có thể sử dụng Exit Sub / Exit Function  Truyền giá trị - ByVal

Sub Truyentri( Byval Ten as <kiểu liệu>) <câu lệnh>

End Sub

 Truyền tham chiếu

Sub Truyenthamchieu(Ten as <kiểu liệu>) <câu lệnh>

(55)

V - Cấu trúc điều khiển

(56)

V - Cấu trúc điều khiển

1 Cấu trúc chọn

 Các biểu thức so sánh

Ký hiệu Ý nghĩa

= Bằng

<> Khác

> Lớn hơn < Nhỏ hơn

(57)

V - Cấu trúc điều khiển

1 Cấu trúc chọn (tt)

a If … Then  Một dòng:

If <đk> Then <Cơng việc>

 Nhiều dịng:

If <đk> Then

(58)

V - Cấu trúc điều khiển

1 Cấu trúc chọn (tt)

b If … Then … Else

If <đk 1> Then

<khối lệnh 1> ElseIf <đk2> Then

<khối lệnh 2> Else

(59)

V - Cấu trúc điều khiển

1. Cấu trúc chọn (tt)

c. Select Case

Select Case <biểu thức kiểm tra> Case <danh sách kết 1>

<khối lệnh 1>

Case <danh sách kết 1> <khối lệnh 1>

Case Else

(60)

V - Cấu trúc điều khiển

1. Cấu trúc chọn (tt)

c. Select Case (tt)

Ví dụ:

Dim Number Number =

Select Case Number Case To 5

Debug.Print "Between and 5"

Case 6, 7,

Debug.Print "Between and 8"

Case To 10

Debug.Print "Greater than 8"

Case Else

Debug.Print "Not between and 10"

(61)

V - Cấu trúc điều khiển

1. Cấu trúc chọn (tt)

c. Select Case (tt)

Lưu ý: Trong cấu trúc Case không sử dụng tên biến Không dùng Case Index >100 mà

(62)

V - Cấu trúc điều khiển

2. Cấu trúc lặp

a. Do … Loop : Lặp không xác định Kiểu 1: Thực điều kiện đúng

Do While <điều kiện> <khối lệnh>

Loop

Kiểu 2: Thực điều kiện đúng

Do

<khối lệnh>

(63)

V - Cấu trúc điều khiển

2. Cấu trúc lặp (tt)

a. Do … Loop : (tt)

Kiểu 3: Thực điều kiện sai

Do Until <điều kiện> <khối lệnh>

Loop

Kiểu 4: Thực điều kiện sai

Do

<khối lệnh>

(64)

V - Cấu trúc điều khiển

2. Cấu trúc lặp (tt)

b. For … Next : Lặp với số lần xác định

For <biến đếm> =<điểm đầu> To <điểm cuối> [Step

<bước nhảy>] <khối lệnh>

Next

Ví dụ:

For I = To 10

For J = To 10

For K = To 10

Next Next

(65)

V - Cấu trúc điều khiển

2. Cấu trúc lặp (tt)

c. For Each … Next : Lặp với số số phần tử của tập đối tượng/ mảng

For Each <phần tử> In <nhóm>

<khối lệnh> Next

(66)

V - Cấu trúc điều khiển

2. Cấu trúc lặp (tt)

c. For Each … Next : (tt) Ví dụ:

Dim mang(10) As Integer Dim i

mang(0) = mang(1) = mang(2) = mang(3) = mang(4) =

For Each i In mang MsgBox i

(67)

V - Cấu trúc điều khiển

2. Cấu trúc lặp (tt)

d. While …Wend: Lặp không xác định, không sử dụng lệnh Exit

While <đk>

<câu lệnh>

(68)

V - Cấu trúc điều khiển

3. Câu lệnh thoát – Exit

Lệnh Ý nghĩa

Exit do Lệnh thoát cho Do …

Exit For Lệnh thoát cho For …

Exit sub Lệnh thoát cho Sub

(69)

V - Cấu trúc điều khiển

3. Câu lệnh – Exit (ví dụ)

Sub RandomLoop Dim I, MyNum Do For I = To 1000

MyNum = Int(Rnd * 100) Select Case MyNum

Case 17: MsgBox "Case 17" Exit For

Case 29: MsgBox "Case 29" Exit Do

Case 54: MsgBox "Case 54" Exit Sub

End Select Next Loop

(70)

V - Cấu trúc điều khiển

4. Câu lệnh Go to: Bãy lỗi On Error Goto Loi

(71)

VI- Tạo đối tượng VB

 Khai báo biến đối tượng

(72)

VI- Tạo đối tượng VB

1 Tạo biến đối tượng

 Cú pháp:

<[Dim]/[Public]/[Private]> <tên biến> As <đối tượng>

 Ví dụ:

 Dim frmbieumau As Form  Dim txtInfor As TextBox

(73)

VI- Tạo đối tượng VB

2 Từ khoá thường dùng

 Từ khoá SET

 Tham chiếu đến đối tượng chuyên biệt  Ví dụ:

Set frmBien = Form1

(74)

VI- Tạo đối tượng VB

2 Từ khoá thường dùng

 Từ khoá IS

 Cho phép kiểm tra biến đối tượng có tham chiếu đến đối tượng khơng

 Ví dụ:

(75)

VI- Tạo đối tượng VB

2 Từ khoá thường dùng

 Từ khoá Nothing

 Giải phóng vùng nhớ dùng cho đối tượng  Ví dụ

Dim Afont as Font ………

(76)

VI- Tạo đối tượng VB

2 Từ khoá thường dùng

 Từ khoá New

 Tạo đối tượng từ đối tượng gốc (là lớp)

(77)

VI- Tạo đối tượng VB

2 Từ khoá thường dùng

 Các kiểu đối tượng tổng quát: Control, Object,

Variant

 Dùng để tham chiếu đến đối tương thuộc nhiều kiển khác

(78)

VII- Menu cách tạo Menu

 Giới thiệu

(79)

VII- Menu cách tạo Menu

1 Giới thiệu

 Có loại menu bản

(80)

VII- Menu cách tạo Menu

2 Cách tạo menu

a Tạo menu dạng thả xuống

(81)

VII- Menu cách tạo Menu

2 Cách tạo menu

a Tạo menu dạng thả xuống

 Các thuộc tính

Caption : chuỗi hiển thị menuName : tên thành phần

Shortcut: tạo phím tắt cho thành phần

WindowList: Hiển thị tiêu đề form form

mẹ (MDI)

 Checked: Thuộc tính dạng check

(82)

VII- Menu cách tạo Menu

2 Cách tạo menu

a Tạo menu dạng thả xuống

 Các thuộc tính

 Tách nhóm menu: Caption =‘-’

 Tạo phím chọn nhanh: thêm ký tự & trược ký tự cần tạo

(83)

VII- Menu cách tạo Menu

2 Cách tạo menu

a Tạo menu dạng bật

 Tạo trược menu theo dạng thả xuống  Tắt thuộc tính Visible menu vừa tạo  Thiết đặt kiện MouseUp

 Ví dụ:

Private Sub MDIForm_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = vbRightButton Then

PopupMenu mfile, vbPopupMenuLeftAlign End If

(84)

VII- Menu cách tạo Menu

2 Cách tạo menu

a Tạo menu dạng bật ra

 Các thuộc tính hiển thị:

(85)

VIII- Hộp thoại dùng chung

 Hộp thông điệp (Message Box)

 Hộp nhập (Input box)

 Các hộp thoại thông dụng (Common Dialog)

(86)

VIII- Hộp thoại dùng chung

1 Hộp thông điệp – Message box

 Xuất thông tin, tương tác với người dùng

MsgBox(prompt[, buttons] [, title] [, helpfile,

context])

 Ví dụ:

(87)

Hằng số Giá trị Diễn giải

vbOkOnly Chỉ hiển thị nút OK

vbOKCancel Hiển thị nút Ok Cancel

vbAbortRetryIgnore Hiển thị nút Abort, Retry, Ignore vbYesNoCancel Hiển thị nút Yes, No, Cancel

vbYesNo Hiên thị nút Yes No

(88)

Hằng số Diễn giải

vbCritical Dùng cho thông báo lỗi thất bại thi hành cơng việc

vbQuestion Dùng cho câu hỏi yêu cầu người dùng lựa chọn

vbExclamation Dùng cho thơng báo chương trình

(89)

Hằng số Giá trị Nút

vbOk OK

vkCancel Cancel

vbAbort Abort

vbRetry Retry

vbIgnore Ignore

vbYes Yes

(90)

VIII- Hộp thoại dùng chung

2 Hộp nhập – Input Box

 Dùng nhận thông tin

InputBox(prompt[, title] [, default] [, xpos] [,

ypos] [, helpfile, context])

VD:

Public Sub main()

Dim ReturnString As String

(91)

VIII- Hộp thoại dùng chung

3 Các hợp thoại thông dụng

 Mở tập tin  Lưu tập tin  Chọn màu  Chọn Font  In ấn

 Trợ giúp

(92)

Hộp thoại mở lưu tập tin

 Chức năng: Mở lưu tập tin  Ví dụ : Về hộp thoại Open

Private Sub Form_Load() On Error GoTo ErrHander

CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files(*.txt)|*.txt| Batch Files (*.bat)|*.bat"

CommonDialog1.FilterIndex = CommonDialog1.ShowOpen Exit Sub

ErrHander: Exit Sub

CommonDialog1.ShowOpen

End Sub

(93)

Hộp thoại mở lưu tập tin

 Thuộc tính

 Filter: Dạng tập tin mở/lưu

 Filter index: Mục (dạng file) chọn mặc định

(94)

Hộp thoại chọn màu

 Chức năng

 Cho phép chọn màu  ShowColor

 Ví dụ

Private sub getcolor(){

commondialog1.showcolor

(95)

Hộp thoại Font

 Chức

 Cho phép người dùng chọn font chữ  Showfont

 Thuộc tính flags: cho phép chọn loại font hiển thị

 Ví dụ

Private sub getfont()

Commondialog1.showfont

lname.fontname=commondialog1.fontname End sub

Private Sub Command1_Click() CommonDialog1.Flags = &H3 CommonDialog1.ShowFont

(96)

Thuộc tính Giải thích

Color Lưu giữ giá trị màu chọn

FontBold True người dùng chọn chế độ đậm (Bold) False ngựơc lại

FontItalic True in nghiên False ngựơc lại

FontStrikeThru True chọn chế độ gạch ngang ký tự FontUnderLine True chọn chế độ gạch

FontName Tuỳ ý

Max Kích cỡ lớn Font hiển thị Min Kích cỡ nhỏ Font hiển thị FontSize Kích cỡ Font chọn

(97)

Hằng Giá trị Hiệu quả

CdlCFPrinterFonts &H2 Chỉ hiển thị font máy in CdlCFScreenFonts &H1 Chỉ hiển thị font hình

CdlCFBoth &H3 Chỉ hiển thị font hình font máy in

CdlCFScalableOnly &H20000 Hiển thị font tỷ lệ font TrueType

(98)

Hộp thoại Print

 Chức năng

 Thực việc in ấn  ShowPrint

 Một số thuộc tính thơng dụng: Copies,

FromPage, ToPage

 Ví dụ

(99)

Thuộc tính Giải thích

Copies Số in

FromPage Số thứ tự trang bắt đầu Max Số in tối đa cho phép Min Số in tối thiểu cho phép

PrinterDefault Nếu = True thay đổi gán lại thành thay đổi hệ thống có ảnh hưởng đến ứng dụng khác

ToPage Số thứ tự trang in cuối

(100)

X Xử lý chuột bàn phím

1 Sự kiện chuột

 Biểu mẫu điều khiển bắt đầu kiện

chuột có trỏ chuột ngang qua.

 Có kiện chuột chủ yếu , là:

MouseDown: Xảy người sử dụng ấn chuột MouseUp : Xảy người sử dụng thả

một nút chuột

(101)

Các tham số :

Button: cho biết nút chuột

Shift: Cho biết Shift , Ctrl hay Alt ấn X, Y : cho biết toạ độ trỏ chuột

Sử dụng kiện MouseDown

Ví dụ mơ ta kiện ấn chuột

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Line (10, 10)-(X, Y) ‘vẽ đường thẳng (10,10) đến (X,Y) End Sub

(102)

Sự kiện MouseUp:

Ví dụ mơ ta kiện thả chuột

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = Then Print "Ban vua tha chuot trai“ If Button = Then Print "Ban vua tha chuot phai“ If Button = Then Print "Ban vua tha chuot giua“ End Sub

(103)

Sử dụng kiện MouseMove

 Thường dùng với phương thức Line để vẽ hình

 Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X

As Single, Y As Single)

 Circle (X, Y), 50  End Sub

Hiệu chỉnh trỏ chuột

 Ta dùng thuộc tính MousePointer để hiển thị biểu tượng,

con trỏ hình hay trỏ chuột hiệu chỉnh Dưới số giá trị thuộc tính MousePointer

 CcDefault  CcArrow  CcCross  ……

(104)

2 Sự kiện bàn phím

 Bàn phím có kiện:

 KeyPress: phím có mã ASCII ấn  KeyDown: phím ấn

 KeyUp: phím thả

 Chỉ có điều khiển có Focus bắt đầu

kiện bàn phím

 Cịn biểu mẫu, bắt đầu kiện bàn

phím kích hoạt khơng có điều khiển khác có Focus

(105)

Private Sub Text1_KeyPress(KeyAscii As Integer) MsgBox KeyAscii

End Sub

Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)

MsgBox "Keycode: " & KeyCode & "Shift: " & Shift

End Sub

Shift Ý nghĩa

1 Phím Shift

2 Phím Ctrl

4 Phím Alt

KeyCode = 13Phím Enter

KeyCode = 27Phím Asc

(106)

LẬP TRÌNH CƠ SỞ DỮ LIỆU

LẬP TRÌNH VỚI ADO

(107)

ADO (ActiveX Data Object)

 ADO gì?

 Mơ hình ADO

 Tham chiếu ADO VB

(108)

Tổng quan phương thức truy cập dữ liệu Client Application ADO OLE DB ODBC Relational Data SQL Server Jet Oracle

Non – Relational Data Email

Text

(109)

1 ADO ?

 ADO giao diện lập trình truy xuất sở liệu

được phát triễn Microsoft, ADO nằm bên OLE DB, sử dụng phương thức OLE DB cung cấp để truy xuất liệu.

 OLE DB giao diện lập trình sở liệu

mức hệ thống.

 Một số phiên OLE DB:

 Microsoft OLE DB Provider for ODBC

 Microsoft OLE DB Provider for SQL Server  Microsoft OLE DB Provider for Microsoft Jet  Microsoft OLE DB Provider for Oracle

 ……

(110)

Mơ hình đối tượng

ADO

(111)

Đối tượng ADO

 Connection, command, Recordset: đối tượng chủ yếu

của mơ hình đối tượng

Connection: Dùng kết nối sở liệu, làm nhiệm vụ kiểm

soát giao dịch

 Connection gắn liền với đối tượng Recordset

Command

Command : Thực lệnh

Các hành động: Update, Insert, Delete câu lệnh truy

vấn

Recordset: Chứa tập hợp kết trả từ liệu

nguồn

Errors: Chứa thông tin liên quan đến lỗi gây

những đối tượng mơ hình ADO

(112)

Tham chiếu ADO vào Visual Basic

 Chọn Project / Reference/ Chọn Microsoft ActiveX

Data Objects 2.7 Library ( Sử dụng cho trường hợp SQL Server)

 Chọn Project / Components/Chọn Microsoft ADO

Data Control 6.0 (OLE DB )

(113)

Đối tượng Connection

 Thuộc tính:

 CommandTimeout: Thời gian chờ để nhận kết thực thi

câu lệnh Execute

 ConnectionString: Chỉ định chuỗi kết nối CSDL

 Các thông số ConnectionString:

 Provider: SQLOLEDB  dùng cho SQL Server  Data Source: Tên Server

 Initial Catalog: Tên CSDL

 UserID, Password: Tài khoản mật đăng nhập vao CSDL  Provider=SQLOLEDB.1;Persist Security Info=False;User

ID=sa;Initial Catalog=Northwind;Data Source=NVLOT

 ConnectionTimeout: Thời gian chờ để nhận kết kết nối

Mặc định 15 giây

 Cursorlocation: Cho biết đối tượng Recordset tạo phía

(114)

Đối tượng Connection

 DefaultDatabase: Tên CSDL SQL server cần kết nối  Provider: Chỉ định Data provider sử dụng  State: Trả trạng thái nối kết

 Phương thức:

 BeginTrans: Khởi tạo giao dịch

 Cancel: Ngừng thực thi câu lệnh Open Execute  Close: Đóng đối tượng Connection ngắt nối kết

 CommitTrans: Lưu lại tất thay đổi thực

hiện trình thực giao dịch

 Execute: thực thi câu truy vấn, câu SQL, thủ tục lưu

trữ nội

 Open: Thiết lập kết nối với SQL Server qua

ConnectionString

(115)

Đối tượng Connection

Dim adoconnection As New ADODB.Connection Dim adocommand As New ADODB.Command With adoconnection

.ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=tes;Data Source=(local)" Open

.BeginTrans End With

With adocommand

.ActiveConnection = adoconnection CommandType = adCmdText

.CommandText = "Insert sinhvien(ma,ten) values(4," & “Cong" & ") " Execute

End With

(116)

Đối tượng Recordset

 Phương thức:

 Addnew: Thêm vào Recordset mẫu tin  Cancel: Hủy bỏ thực thi phương thức Open

 CancelBatch: Hủy bỏ cập nhật xảy

Recordset

 Clone: Tạo Recordset

 Close: Đóng Recordset đóng kết nối với CSDL  Delete: Xóa mẫu tin

 GetRows: Nhận nhiều mẫu tin đưa vào mảng

 GetString: Chuyển liệu Recordset thành chuỗi  Move: Di chuyển tro dòng mẫu tin

(117)

Đối tượng Recordset

 MoveNext: Di chuyển trỏ dòng sang mẫu tin  MovePrevious: Di chuyển trỏ dịng mẫu tin trước  NextRecordset: Trả Recordset kết tiếp

 Open: Mở Recordset dựa ActiveConncection

Source

 Requery: Thực thi lại câu Query để tươi  Resync: Làm tươi lại liệu Recordset  Update: Lưu lại thay đổi Recordset

 UpdateBatch: Lưu lại thay đổi trỏ

(118)

Đối tượng Recordset

Dim adoRS As New ADODB.Recordset With adoRS

.ActiveConnection = "Provider=SQLOLEDB.1;Persist Security

Info=False;User ID=sa;Initial Catalog=Northwind;Data Source=(local)" Source = “Select EmployeeID, Lastname, FirstName From Employees" Open

End With

While adoRS.Fields.Count >

If (Not adoRS.BOF) And (Not adoRS.EOF) Then Debug.Print adoRS.Fields("FirstName")

Debug.Print adoRS.Fields("LastName") End If

(119)

Đối tương Command

 Phương thức:

 Cancel: Hủy bỏ thực thi câu lệnh Execute

 Execute: thực thi câu lệnh thuộc tính ComandText

 Thuộc tính:

 ActiveConnection:Chuỗi nối kết đến CSDL  CommandText: Câu lệnh cần thực

 CommandTimeout: Số giây mà đối tượng Command chờ

kết trả

 CommandType: Loai câu lệnh Command  Name: Tên đối tượng Command

 State: Trạng thái đối tượng Command  Đóng, mở,

(120)

Trình bày liệu DataGrid

 Project  Components  Microsoft DataGrid Control

6.0

 Project  Components  Microsoft ADO Data Control

6.0

ADO (ADODC1) DataGrid

(121)

Adodc1.ConnectionString =

"Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial

Catalog=Northwind;Data Source=(local)" Adodc1.CommandType = adCmdText

Adodc1.RecordSource = "select * from Employees“ Set adoRS.DataSource = Adodc1

(122)(123)

Dim sql, strcon As String

strcon = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=tes;Data Source=(local)"

sql = "Insert into sinhvien(mssv,hoten,phai) values('" & txtmssv.Text & "','" & txthoten.Text & "','"

If Nam.Value = True Then sql = sql & "Nam')"

Else

sql = sql & "Nu')" End If

With adocommand

.ActiveConnection = strcon CommandText = sql

.Execute End With

Adodc1.Refresh DBGrid.Refresh

(124)

Dim sql, strcon As String

strcon = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=tes;Data Source=(local)"

sql = "Update sinhvien set hoten='" & txthoten.Text & "' where mssv='" & txtmssv.Text & "'"

With adocommand

.ActiveConnection = strcon CommandText = sql

.Execute End With

Adodc1.Refresh DBGrid.Refresh

(125)

Tom tắt kết nối ADO

 Có thể sử dụng cách lệnh sau để kết nối

thực thi với sở liệu SQL Server / Access

 Khai báo biến

 Dim Conn, Rst, gsCon

 Khởi tạo gsCon

 gsCon=“chuỗi Provider”

 Khởi tọa kết nối

(126)

 Khởi tạo kết nối bảng

 Set Rst=CreateObject(“ADODB.Recordset”)  Hoặc R as New ADODB.Recordset

 Tạo kết nối

 Conn.Open gsConn

 Thực thi phát biểu Insert/Update/Delete

 Conn.Execute “Delete from… ”

 Tạo kết nối với bảng csdl ứng với kết nối Conn

 Rst.Open “Select * from ….” , Conn

 Thêm liệu vào bảng

 Rst.AddNew

(127)

 Lấy liệu

 Biến=Rst(“Tên cột”)

 Biến =Rst(“số thứ tự côt”)

 Di chuyển bảng

 Rst.MoveFirst  Rst.MoveLast  Rst.MoveNext

 Rst.MovePrevious

 Kiểm tra

 Rst.EOF, Rst.BOF

(128)

Crystal Report

 Chức năng:

 Cho phép in mẫu báo cáo hình, máy in,

excel, word…

(129)

Crystal Report

(130)

Crystal Report

Nguồn

liệu Microsoft

SQL Server

Thông tin đăng nhập Microsoft SQL

(131)(132)(133)(134)

Crystal Report

 Sau thiết kế song  <tên Report>.<rpt>

 Sử dụng điều khiển Crviewer Control

 Project  Components  Crystal Report Viewer

Control

 Crystal Report 8.5 ActiveX Designers Design and

(135)(136)

Private Sub Form_Load()

CRViewer1.EnableExportButton = True

Dim appReport As New CRAXDDRT.Application Dim csReport As CRAXDDRT.Report

Set csReport = appReport.OpenReport(App.Path & "\Report2.rpt")

csReport.Database.LogOnServer "pdssql.dll", “(local)", "tes", "sa", ""

CRViewer2.ReportSource = csReport CRViewer2.ViewReport

End Sub

Mã lệnh hiển thị hộp thoại

(137)

Xây dựng, đăng ký sử dụng tập tin DLL DLL – Dynamic Link Library thự viện liên kết động chứa phương thức thuộc tính dùng lại

 Xây dựng tập tin dll

 File  New Project  ActiveX DLL  Đặt tên cho Project

 Mục Instancing:

 Private: Chỉ phép tạo đối tượng dự án chứa đối

tượng

 PublicNotCreatable: Cho phép ứng dụng khác sử dụng

đối tượng, không cho phép ứng dụng khác tạo chúng

 MultiUse:Tạo tuỳ ý đối tượng

 Global MultiUse:Tương tự MultiUse, trở thành phần

(138)

Tên lớp Tên Project

(139)

Xây dựng, đăng ký sử dụng tập tin DLL

 Khai báo phương thức thuộc tính cho lớp  Lưu tập tin lại

 Biên dịch:

 Project  Properties  Component  chọn Binary Compatibility

File  Make <Tên file>.DLL  Lưu vào thư mục System32

 Đăng ký tập tin DLL

(140)

Xây dựng, đăng ký sử dụng tập tin DLL

 Sử dụng tập tin DLL

 Tạo Project mới

 Project  References  Chọn Project chứa tập

tin DLL

 Khai báo đối tượng sử dụng

Private Sub Command1_Click() Dim s

Set s = CreateObject("BG.TEST") MsgBox s.Giaithua(6)

Ngày đăng: 21/04/2021, 04:13

Xem thêm:

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w