Xử lý các sự kiện nhập liệu

51 964 3
Xử lý các sự kiện nhập liệu

Đ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

Xử lý các sự kiện nhập liệu

LOGO Xử lý kiện nhập liệu www.themegallery.com Nội dung Keyboard Mouse Timer Click to add Title Company Logo 4/14/2009 Giới thiệu  Tìm hiểu thơng điệp phát sinh từ bàn phím hay từ thiết bị chuột để viết xử lý tương ứng với thiết bị  Bộ định thời gian: Windows cung cấp chế để truyền thông với ứng dụng theo định kì  Ứng dụng cần khai báo định thời gian với khoảng thời gian cho trước  Khi ứng dụng hoạt động hệ thống truyền tín hiệu cho ứng dụng theo khoảng thời gian định kì khai báo Lập trình mơi trường windows 4/14/2009 Keyboard - Mouse Bàn phím chuột hai thiết bị nhập liệu quan trọng máy tính Hầu hết chức Windows hỗ trợ dùng bàn phím chuột Lập trình mơi trường windows 4/14/2009 Keyboard - Mouse Bàn phím chuột xử lý thông qua chế thông điệp Windows Mọi kiện bàn phím chuột Windows gửi đến chương trình thơng qua thơng điệp Lập trình mơi trường windows 4/14/2009 Keyboard  Khi nhấn phím xảy trường hợp sau:  Nhấn phím ký tự  Nhấn phím điều khiển (các phím ESC, Enter, F1F12 )  Nhấn Shift Ctrl Alt tổ hợp ba phím với phím ký tự  Khi phím bàn phím gõ, nhả hay giữ thông điệp tương ứng gửi đến cửa sổ focus 4/14/2009 Keyboard  Các phím nhấn phân thành hai nhóm chính:  Nhóm phím hệ thống (system keys): phím nhấn với phím Alt  Nhóm phím thường (nonsystem keys): phím Alt khơng nhấn  Thường phím hệ thống Windows xử lý dịch thành kiện tương ứng Lập trình mơi trường windows 4/14/2009 Mã phím ảo – Virtual Keycode  Windows gán cho phím bàn phím mã, gọi mã phím ảo  Mã phím ảo mã không phụ thuộc thiết bị, thay cho mã quét (scan code) phụ thuộc loại bàn phím nhà sản xuất  Các mã phím ảo định nghĩa dạng macro, bắt đầu VK_  Ví dụ mã phím ảo cho phím ESC, Enter, F1 hay Alt VK_ESCAPE, VK_RETURN, VK_F1 VK_ALT 4/14/2009 Mã phím ảo – Virtual Keycode  Cần phải phân biệt ký tự nhận ấn phím mã phím ảo  Ví dụ phím A nhấn, ký nhận ký tự „a‟ „A‟ khơng, tuỳ thuộc vào trạng thái phím CAPSLOCK, phím Shift, Alt, Ctrl có nhấn hay khơng 4/14/2009 Xử lý kiện bàn phím Mơ hình xử lý kiện bàn phím Windows scan code, virtual-key code… 10 Lập trình mơi trường windows 4/14/2009 Sự kiện MouseWheel  Sự kiện MouseWheel phát sinh người dùng scroll chuột  Để xử lý kiện MouseWheel ta override phương thức OnMouseWheel  Ví dụ: protected override void OnMouseWheel(MouseEventArgs mea) { if (mea.Delta>0) MessageBox.Show("Ban vua scroll chuot len", "Thong bao"); else MessageBox.Show("Ban vua scroll chuot xuong", "Thong bao"); } 37 Lập trình mơi trường windows 4/14/2009 Sự kiện Click Sự kiện Click phát sinh phím chuột nhấn Sự kiện phát sinh kèm theo tham số EventArgs, tham số không chứa thông tin trạng thái nút chuột nhấn vị trí trỏ chuột nhấn protected override void OnClick(EventArgs ea) { … } 38 Lập trình mơi trường windows 4/14/2009 Sự kiện DoubleClick  Khi DoubleClick phát sinh dãy kiện sau:         MouseDown Click MouseUp MouseMove MouseDown DoubleClick MouseUp MouseMove protected override void OnDoubleClick(EventArgs ea) { … } 39 Lập trình mơi trường windows 4/14/2009 Bài tập 40 Lập trình mơi trường windows 4/14/2009 Timer Multitasking Quản lý thông báo trạng thái Autosave Demo version Game 41 Lập trình môi trường windows 4/14/2009 Xử lý kiện Timer Theo lý thuyết thông điệp thời gian Windows cung cấp xác đến mili giây thực tế khơng hồn tồn Sự xác cịn phụ thuộc vào đồng hồ hệ thống hoạt động thời chương trình 42 Lập trình mơi trường windows Lớp Timer Có thể tạo đối tượng Timer cách dùng constructor mặc định sau: Timer timer = new Timer(); Timer có kiện: Timer Event Event Method Delegate Argument Tick OnTick EventHandler EventArgs 4/14/2009 Lập trình mơi trường windows 43 4/14/2009 Lớp Timer Chúng ta định nghĩa kiện cho timer sau: void TimerOnTick(object obj, EventArgs ea) { … } Đăng ký kiện: Timer.Tick += new EventHandler(TimerOnTick) 44 Lập trình mơi trường windows Lớp Timer Lớp Timer có thuộc tính: Timer Properties Type Property Accessibility Description int Interval bool Enabled get/set 4/14/2009 get/set Tick time in milliseconds Set to true if timer is running Lập trình mơi trường windows 45 4/14/2009 Lớp Timer Các phương thức Timer : void Start() void Stop() 46 Lập trình mơi trường windows 4/14/2009 Lớp Timer (Ví dụ 1) using System; using System.Drawing; using System.Windows.Forms; public class CloselnFive: Form { public static void Main() { Application.Run(new CloselnFive()); } //……… 47 Lập trình mơi trường windows Lớp Timer (Ví dụ 1) public class CloselnFive: Form { public CloselnFive(){ Text = "Closing in Five Minutes"; Timer timer = new Timer(); timer.Interval = * 60 * 1000; timer.Tick += new EventHandler(TimerOnTick); timer.Enabled = true; } void TimerOnTick(object obj, EventArgs ea){ Timer timer = (Timer) obj; timer.Stop(); timer.Tick -= new EventHandler(TimerOnTick); Close () ; } } 48 4/14/2009 Lập trình mơi trường windows 4/14/2009 Lớp Timer (Ví dụ 2) using System; using System.Drawing; using System.Windows.Forms; class RandomRectangle: Form{ public static void Main(){ Application.Run(new RandomRectangle()); } public RandomRectangle(){ Text = "Random Rectangle"; Timer timer = new Timer(); timer.Interval = 1; timer.Tick += new EventHandler(TimerOnTick); timer.Start(); } //……… 49 Lập trình mơi trường windows Lớp Timer (Ví dụ 2) 4/14/2009 void TimerOnTick(object obj, EventArgs ea) { Random rand = new Random(); int x1 = rand.Next(ClientSize.Width); int x2 = rand.Next(ClientSize.Width); int y1 = rand.Next(ClientSize.Height); int y2 = rand.Next(ClientSize.Height); Color color = Color.FromArgb(rand.Next(256), rand.Next(256), rand.Next(256)); Graphics grfx = CreateGraphics(); grfx.FillRectangle(new SolidBrush(color), Math.Min(xl, x2), Math.Min(yl, y2), Math.Abs(x2-xl), Math.Abs(y2-yl) ); grfx.Dispose() ; } } 50 Lập trình mơi trường windows LOGO www.themegallery.com ... có nhấn hay không 4/14/2009 Xử lý kiện bàn phím Mơ hình xử lý kiện bàn phím Windows scan code, virtual-key code… 10 Lập trình mơi trường windows 4/14/2009 Xử lý kiện bàn phím  Khi người dùng... Xử lý kiện bàn phím  Các kiện bàn phím gửi đến cho cửa số giữ focus hành  Hệ thống gửi hai kiện bàn phím khác người dùng nhấn phím nhả phím 12 Lập trình mơi trường windows 4/14/2009 Xử lý kiện. .. trường windows Xử lý kiện chuột 4/14/2009  Các kiện chuột gửi đến cho:  Cửa sổ chứa trỏ chuột  Hoặc cửa sổ “capture” chuột  Có hai loại kiện chuột:  Client area messages • Các kiện chuột xảy

Ngày đăng: 12/09/2012, 14:16

Hình ảnh liên quan

Mô hình xử lý sự kiện bàn phím của - Xử lý các sự kiện nhập liệu

h.

ình xử lý sự kiện bàn phím của Xem tại trang 10 của tài liệu.
tất cả các phím. Bảng liệt kê giá trị 26 ký tự Latin được mô tả trong bảng sau: - Xử lý các sự kiện nhập liệu

t.

ất cả các phím. Bảng liệt kê giá trị 26 ký tự Latin được mô tả trong bảng sau: Xem tại trang 20 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan