Giao tiếp với keyboard thông qua các đối tượng giao diện

Một phần của tài liệu Giáo Trình Tin học cơ bản (Trang 123)

I E= T*R

Giao tiếp với keyboard thông qua các đối tượng giao diện

‰ Mặc dù có thểcó nhiều phần tửgiao diện cùngđược hiển thịtrên màn hình tại từng thởiđiểm nhưng chỉcó 1 phần tửgiao diệnđược giao tiếp với thiết bịI/O, ta gọi phần tửgiao diện này là 'active' hay được 'focus'.

‰ Liên quanđến việcấn thả1 phím, VB sẽtạo ra 3 sự kiện sauđây và gởi vềcho phần tử được 'focus' hiện hành :

ƒ KeyDown : sự kiện xảy ra khi người sử dụng bấm (ấn xuống) bất kỳ một phím nào trên bàn phím.

ƒ KeyUp: sựkiện xảy ra khi người sửdụng thảphím vừaấn ra.

ƒ KeyPress: sựkiện xảy ra khi người sửdụngấn/thảbất kỳmột phím nào trên bàn phím mà tạo rađược 1 ký tựANSI.

Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM

Môn : Tin học Slide 246

Thtc xlý s kin KeyDown, KeyUp & KeyPress

‰ Thủtục có dạng sau :

Private SubControlName_KeyDown (KeyCode as Integer, Shift as Integer).

Private SubControlName_KeyUp (KeyCode as Integer, Shift as Integer).

trongđó :

ƒ ControlNamelà tên củađiều khiển nhận sựkiện keydown/keyup.

ƒ KeyCode là mã "virtual code" của phímđượcấn/thả.

ƒ Shift là giá trị miêu tảtrạng tháiấn giữcác phímđiều khiển (là một dãy bit với bit 0 cho phím SHIFT, bit 1 cho phím CTRL, bit 2 cho phím ALT).

‰ Thủtục KeyPress có dạng sau :

Private SubControlName_KeyPress (KeyAscii As Integer)

trongđó :

ƒ ControlNamelà tên củađiều khiển nhận sựkiện keypress.

ƒ KeyAscii là mã ký tựANSI của phímđượcấn/thả.

‰ Mỗiđối tượng có thủtục xửlý biến cốriêng, thủtục này cũng là method củađối tượng tươngứng.

Chương 10: Tương tác giữa người dùng & chương trình

Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM

Môn : Tin học Slide 247

Private Sub Text1_KeyDown (KeyCode As Integer, Shift As Integer) Dim ShiftDown, AltDown, CtrlDown, Txt

ShiftDown = (Shift And vbShiftMask) > 0 AltDown = (Shift And vbAltMask) > 0 CtrlDown = (Shift And vbCtrlMask) > 0

If KeyCode = vbKeyF2 Then ' Display key combinations. If ShiftDown And CtrlDown And AltDown Then

Txt = "SHIFT+CTRL+ALT+F2." ElseIf ShiftDown And AltDown Then

Txt = "SHIFT+ALT+F2."

ElseIf ShiftDown And CtrlDown Then Txt = "SHIFT+CTRL+F2." ElseIf CtrlDown And AltDown Then

Txt = "CTRL+ALT+F2." ElseIf ShiftDown Then (adsbygoogle = window.adsbygoogle || []).push({});

Txt = "SHIFT+F2." ElseIf CtrlDown Then Txt = "CTRL+F2." ElseIf AltDown Then Txt = "ALT+F2." ElseIf SHIFT = 0 Then

Txt = "F2." End If

Text1.Text = "You pressed " & Txt End If

End Sub

Thí d thtc x lý biến c KeyDown ca 1 textbox

Khoa Công nghệ Thông tin Trường ĐH Bách Khoa Tp.HCM

Môn : Tin học Slide 248

Một phần của tài liệu Giáo Trình Tin học cơ bản (Trang 123)