Xem mẫu

MÔN TIN HỌC
Chương 10

TƯƠNG TÁC GIỮA NGƯỜI DÙNG
& CHƯƠNG TRÌNH
10.1 Tổng quát về tương tác giữa người dùng & chương
trình
10.2 Giao tiêp với b2n phím.
10.3 Giao tiếp với chuột
10.4 Vẽ văn bản và đồ họa lên đối tượng giao diện
10.5 Vấn đề in ấn trong VB
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

Môn: Tin học
Chương 10: Tương tác giữa người dùng & chương trình
Slide 258

10.1 Tổng quát về tương tác giữa người dùng & chương
trình
Trong lúc chương trình chạy, nó thường tương tác với người dùng. Sự tương
tác gồm 2 hoạt động chính:
chờ nhận dữ liệu do người dùng cung cấp hay chờ nhận lệnh của người
dùng để thực thi 1 chức năng nào đó.
hiển thị thông báo và/hoặc kết quả tính toán ra màn hình/máy in để người
dùng biết và sử dụng.
Sự tương tác giữa người dùng và máy tính được thực hiện thông qua các thiết
bị nhập/xuất (thiết bị I/O - input/output) như bàn phím/chuột để nhập dữ liệu hay
lệnh, màn hình/máy in để xuất kết quả hay thông báo...
Hiện có hàng trăm hãng khác nhau chế tạo thiết bị I/O cho máy PC, mỗi hãng
chế tạo rất nhiều model của cùng 1 thiết bị (thí dụ hãng HP đã chế rất nhiều
model máy in phun mực, máy in laser,...). Mỗi model thiết bị của từng hãng có
những tính chất vật lý riêng và khác với các model khác.
Để giúp người lập trình truy xuất các thiết bị I/O dễ dàng, độc lập với tính chất
phần cứng của thiết bị, HĐH Windows và VB đã che dấu mọi tính chất phần
cứng của các thiết bị và cung cấp cho người lập trình 1 giao tiếp sử dụng duy
nhất, độc lập với thiết bị.
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

Môn: Tin học
Chương 10: Tương tác giữa người dùng & chương trình
Slide 259

Kiến trúc tương tác giữa người dùng & ứng dụng VB
My Visual Basic Application

Ứng dụng giao tiếp
vớI các thiết bị trừu
tượng thông qua
Windows
Windows tạo &
quản lý các thiết
bị trừu tượng

Screen Object

Mouse

Keyboard

Printer Object

Windows

Windows giao tiếp
vớI ác device
driver thiết bị
Driver

Keyboard
Driver

Mouse
Driver

AnyKey
Keyboard

Logitech
Mouse

Printer
Driver

Các driver giao
tiếp vớI các thiết
bị vật lý

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

HP Laser 5

Môn: Tin học
Chương 10: Tương tác giữa người dùng & chương trình
Slide 260

Kiến trúc tương tác giữa người dùng & ứng dụng VB (tt)
Xem hình vẽ của slide trước (miêu tả kiến trúc tương tác giữa người dùng & ứng
dụng VB), ta thấy:
cấp thấp nhất là các thiết bị phần cứng, mỗi thiết bị có tính chất riêng và
khác với các thiết bị khác (ngay cả cùng loại, cùng hãng nhưng khác model).
cấp device driver điều khiển và giao tiếp trực tiếp với phần cứng nhưng che
dấu mọi tính chất chi tiết của phần cứng, nó cung cấp cho cấp trên 1 giao tiếp
sử dụng phần cứng độc lập với tính chất phần cứng đó ⇒ Mỗi model thiết bị
phần cứng của 1 hãng cần có device driver riêng.
cấp HĐH xử lý các chức năng luận lý (đệm dữ liệu, xử lý sai,...) trước khi nhờ
device driver giao tiếp trực tiếp với phần cứng. Windows che dấu các loại
phần cứng và tạo ra những thiết bị trừu tượng để ứng dụng truy xuất chúng
dễ dàng và độc lập với loại thiết bị (đối tượng Printer, Screen, Mouse,
Keyboard).
VB tạo ra những đối tượng giao diện cao cấp và dễ dùng: mỗi đối tượng
giao diện (form, window, listbox,...) đều có thể giao tiếp trực tiếp với người
dùng để nhập/xuất dữ liệu, chờ nhận sự kiện hay chủ động thông báo cho
user.
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

Môn: Tin học
Chương 10: Tương tác giữa người dùng & chương trình
Slide 261

Kiến trúc tương tác giữa người dùng & ứng dụng VB (tt)
Sau khi đã biết kiến trúc giao tiếp I/O của ứng dụng VB, khi cần giao tiếp với
người dùng, ta nên:
dùng các đối tượng giao diện cao cấp (định sẵn của VB hay ActiveX
Control).
trong 1 số trường hợp cần thiết ta sẽ dùng các đối tượng của Windows như
Printer và Screen.
trong 1 số trường hợp tối cần thiết ta mới gọi các hàm trong giao tiếp của
device driver.
và tuyệt đối không nên truy xuất trực tiếp phần cứng thiết bị I/O vì rất khó
khăn, không an toàn, dễ bị tranh chấp với các ứng dụng chạy đồng thời.
Tương tác với người dùng thông qua các đối tượng giao diện được thực hiện
như sau:
nhập liệu/nhận lệnh thông qua các thủ tục xử lý sự kiện của phần tử giao
diện tương ứng.
xuất kết quả/thông báo bằng cách gán kết quả vào thuộc tính tương ứng
của đối tượng giao diện hay dùng các method vẽ đồ họa tổng quát.
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

Môn: Tin học
Chương 10: Tương tác giữa người dùng & chương trình
Slide 262

nguon tai.lieu . vn