![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Bài giảng Lập trình Java căn bản: Chương 6.1 - ThS. Võ Đức Cẩm Hải
Số trang: 44
Loại file: pdf
Dung lượng: 646.19 KB
Lượt xem: 15
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Lập trình Java căn bản: Chương 6 được biên soạn với mục tiêu nhằm giúp sinh viên hiểu sự cần thiết phải kiểm soát các biến cố; biết cấu trúc các biến cố trong gói AWT. Nắm bắt cách cơ bản để kiểm soát biến cố; hiểu về lớp vô danh (anonymous class).
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình Java căn bản: Chương 6.1 - ThS. Võ Đức Cẩm Hải Chương 6 Mô hình sự kiện với AWT Mô hình sự kiện Slide 1 / 44 Mục tiêu Hiểu sự cần thiết phải kiểm soát các biến cố. Biết cấu trúc các biến cố trong gói AWT. Nắm bắt cách cơ bản để kiểm soát biến cố. Hiểu về lớp vô danh (anonymous class) Mô hình sự kiện Slide 2 / 44 Nội dung 6.1- Ôn tập. 6.2- Mô hình ứng dụng hướng sự kiện. 6.3- Cấu trúc các sự kiện trong AWT. 6.4- Các Event Adapter. 6.5- Tóm tắt về cách quản lý sự kiện 6.6- Trò chơi Puzzle. 6.7- Code quản lý biến cố cơ bản. 6.8- Lớp vô danh (Anonymous class) 6.9- Tóm tắt. 6.10- Câu hỏi. 6.11- Bài tập. Mô hình sự kiện Slide 3 / 44 6.1- Ôn tập • AWT cung cấp một tập các lớp để người lập trình tạo GUI cho ứng dụng. • AWT cung cấp 5 mô hình bố trí các phần tử lên GUI gồm: FlowLayout : Bố trí dạng tuần tự, BorderLayout: Bố trí ra biên, GridLayout: Bố trí dạng lưới 1 phần tử chiếm 1 ô GridBagLayout: Bố trí dạng lưới , có thể 1 phần tử chiếm nhiều ô. CardLayout: Bố trí dạng phân lớp, tại 1 thời điểm có 1 lớp tích cực. Bố trí phức tạp: Kết hợp nhiều panel Mô hình sự kiện Slide 4 / 44 6.2- Mô hình ứng dụng hướng sự kiện • Event-Oriented Application Model: Chương trình có GUI, user tương tác với GUI qua chuột, bàn phím,…, chương trình xử lý, trạng thái mới lại xuất ra cho user xem thân thiện. • Event : một tín hiệu mà ứng dụng nhận biết có sự thay đổi trạng thái của 1 đối tượng. • 3 nguồn phát xuất event: (1) User( gõ phím, kích chuột vào 1 phần tử,…), (2) Do hệ thống (do định thời 1 tác vụ) (3) Do 1 event khác ( các event kích hoạt nhau) • Hiện nay, đa số các ngôn ngữ đều cung cấp mô hình này, VC++ cung cấp MFC (Microsoft Foundation Classes), Java cung cấp JFC (Java Foundation Classes). sự kiện Mô hình Slide 5 / 44 6.2.1- Một minh họa vể ủy thác xử lý sự kiện Ta là một đối tượng. Ta bị bệnh (sự kiện) Bệnh có trạng thái (đối tượng sự kiện). Một bác sĩ là một đối tượng khác. Ta nhờ bác sĩ chữa bệnh (ủy thác xử lý sự kiện). Bác sĩ chờ (listen) ta đưa ra triệu chứng bệnh (đối tượng event) rồi dựa vào trạng thái của bệnh (đối tượng event) để xử lý phù hợp. Có thể ta mắc nhiều bệnh Có thể phải ủy thác chữa bệnh cho nhiều bác sĩ, mỗi bác sĩ một loại bệnh. Một bác sĩ chữa 1 bệnh như thế nào tùy thuộc vào quyết định của bác sĩ đó dựa trên tình hình thực tế của dược phẩm. Mô hình sự kiện Slide 6 / 44 Một minh họa... Event Listener Event 1 Object 1 (Bác sĩ 1) (bệnh 1) Event Source (người bệnh) Event Listener Event 2 Object 2 (Bác sĩ 2) (bệnh 2) Tạo Event Object khi gặp 1 sự kiện Có Event handler để xử lý. Nội dung event handler tùy thuộc vào mục tiêu của ứng dụng Mô hình sự kiện Slide 7 / 44 6.2.2- Một số định nghĩa • Event : Là tình huống ứng dụng nhận biết có 1 đối tượng đã thay đổi trạng thái. • Event handler: Là đoạn code đễn đạt phản ứng của ứng dụng khi gặp 1 event. • Event source: Đối tượng kích hoạt (trigger, fire) 1 event (thí dụ: nút lệnh bị user kích chuột). • Listener : Đối tượng nhận sự ủy nhiệm xử lý sự kiện cho đối tượng khác. • Focus: Trạng thái 1 đối tượng đang bị user nhắm đến để tương tác. Mô hình sự kiện Slide 8 / 44 6.2.3- Đối tượng không thể tự quản lý sự kiện ? Mỗi nút lệnh (lớp Button) trong ứng dụng cụ thể sẽ phản ánh trạng thái của ứng dụng khác nhau. Khi thiết kế lớp Button, người thiết kế không thể biết trước khi user kích vào nút này thì chương trình sẽ phản ứng thế nào. Event handler phụ thuộc vào ứng dụng cụ thể và tại mỗi ứng dụng cũng có thể có nhiều event handler cho mỗi sự kiện trên 1 đối tượng. Java định nghĩa sẵn các Listener Interface cho các tình huống khác nhau (mỗi Event object có listener interface xử lý tương ứng). Một lớp có khả năng listener sẽ phải cụ thể hóa – viết code- một số hành vi xử lý một event phù hợp ( nhận 1 event làm tham số). Mô hình sự kiện Slide 9 / 44 6.2.4-Java Event Delegation Model • Java cung cấp các công cụ để quản lý sự kiện: (1)Tập các lớp mô tả các đối tượng Event (2)Tập các Interface tương ứng cho 1 lớp event, (3)Tập các lớp Adapter tương ứng- Các lớp đã khai báo sẵn các hành vi trong Interface tương ứng để tiết kiệm công sức cho người lập trình vì: Có những lúc chỉ cần 1 event handler mà người lập trính phải viết code (dù là code trống) cho các event handler khác đã được khai báo trong interface . Mô hình sự kiện Slide 10 / 44 Java Delegation Model EventObject_1 Listener 1 Object Listener 2 EventObject_2 - Tạo động Event Object khi gặp 1 sự kiện. - Implements EventListener phù - Có method hợp. addXXXListener - Mỗi method là một event (ListenerObject) handler phụ thuộc ứng dụng. - Có method - Một Listener có thể được ủy removeXXXListener thác xử lý event cho nhiều (Liste ...
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình Java căn bản: Chương 6.1 - ThS. Võ Đức Cẩm Hải Chương 6 Mô hình sự kiện với AWT Mô hình sự kiện Slide 1 / 44 Mục tiêu Hiểu sự cần thiết phải kiểm soát các biến cố. Biết cấu trúc các biến cố trong gói AWT. Nắm bắt cách cơ bản để kiểm soát biến cố. Hiểu về lớp vô danh (anonymous class) Mô hình sự kiện Slide 2 / 44 Nội dung 6.1- Ôn tập. 6.2- Mô hình ứng dụng hướng sự kiện. 6.3- Cấu trúc các sự kiện trong AWT. 6.4- Các Event Adapter. 6.5- Tóm tắt về cách quản lý sự kiện 6.6- Trò chơi Puzzle. 6.7- Code quản lý biến cố cơ bản. 6.8- Lớp vô danh (Anonymous class) 6.9- Tóm tắt. 6.10- Câu hỏi. 6.11- Bài tập. Mô hình sự kiện Slide 3 / 44 6.1- Ôn tập • AWT cung cấp một tập các lớp để người lập trình tạo GUI cho ứng dụng. • AWT cung cấp 5 mô hình bố trí các phần tử lên GUI gồm: FlowLayout : Bố trí dạng tuần tự, BorderLayout: Bố trí ra biên, GridLayout: Bố trí dạng lưới 1 phần tử chiếm 1 ô GridBagLayout: Bố trí dạng lưới , có thể 1 phần tử chiếm nhiều ô. CardLayout: Bố trí dạng phân lớp, tại 1 thời điểm có 1 lớp tích cực. Bố trí phức tạp: Kết hợp nhiều panel Mô hình sự kiện Slide 4 / 44 6.2- Mô hình ứng dụng hướng sự kiện • Event-Oriented Application Model: Chương trình có GUI, user tương tác với GUI qua chuột, bàn phím,…, chương trình xử lý, trạng thái mới lại xuất ra cho user xem thân thiện. • Event : một tín hiệu mà ứng dụng nhận biết có sự thay đổi trạng thái của 1 đối tượng. • 3 nguồn phát xuất event: (1) User( gõ phím, kích chuột vào 1 phần tử,…), (2) Do hệ thống (do định thời 1 tác vụ) (3) Do 1 event khác ( các event kích hoạt nhau) • Hiện nay, đa số các ngôn ngữ đều cung cấp mô hình này, VC++ cung cấp MFC (Microsoft Foundation Classes), Java cung cấp JFC (Java Foundation Classes). sự kiện Mô hình Slide 5 / 44 6.2.1- Một minh họa vể ủy thác xử lý sự kiện Ta là một đối tượng. Ta bị bệnh (sự kiện) Bệnh có trạng thái (đối tượng sự kiện). Một bác sĩ là một đối tượng khác. Ta nhờ bác sĩ chữa bệnh (ủy thác xử lý sự kiện). Bác sĩ chờ (listen) ta đưa ra triệu chứng bệnh (đối tượng event) rồi dựa vào trạng thái của bệnh (đối tượng event) để xử lý phù hợp. Có thể ta mắc nhiều bệnh Có thể phải ủy thác chữa bệnh cho nhiều bác sĩ, mỗi bác sĩ một loại bệnh. Một bác sĩ chữa 1 bệnh như thế nào tùy thuộc vào quyết định của bác sĩ đó dựa trên tình hình thực tế của dược phẩm. Mô hình sự kiện Slide 6 / 44 Một minh họa... Event Listener Event 1 Object 1 (Bác sĩ 1) (bệnh 1) Event Source (người bệnh) Event Listener Event 2 Object 2 (Bác sĩ 2) (bệnh 2) Tạo Event Object khi gặp 1 sự kiện Có Event handler để xử lý. Nội dung event handler tùy thuộc vào mục tiêu của ứng dụng Mô hình sự kiện Slide 7 / 44 6.2.2- Một số định nghĩa • Event : Là tình huống ứng dụng nhận biết có 1 đối tượng đã thay đổi trạng thái. • Event handler: Là đoạn code đễn đạt phản ứng của ứng dụng khi gặp 1 event. • Event source: Đối tượng kích hoạt (trigger, fire) 1 event (thí dụ: nút lệnh bị user kích chuột). • Listener : Đối tượng nhận sự ủy nhiệm xử lý sự kiện cho đối tượng khác. • Focus: Trạng thái 1 đối tượng đang bị user nhắm đến để tương tác. Mô hình sự kiện Slide 8 / 44 6.2.3- Đối tượng không thể tự quản lý sự kiện ? Mỗi nút lệnh (lớp Button) trong ứng dụng cụ thể sẽ phản ánh trạng thái của ứng dụng khác nhau. Khi thiết kế lớp Button, người thiết kế không thể biết trước khi user kích vào nút này thì chương trình sẽ phản ứng thế nào. Event handler phụ thuộc vào ứng dụng cụ thể và tại mỗi ứng dụng cũng có thể có nhiều event handler cho mỗi sự kiện trên 1 đối tượng. Java định nghĩa sẵn các Listener Interface cho các tình huống khác nhau (mỗi Event object có listener interface xử lý tương ứng). Một lớp có khả năng listener sẽ phải cụ thể hóa – viết code- một số hành vi xử lý một event phù hợp ( nhận 1 event làm tham số). Mô hình sự kiện Slide 9 / 44 6.2.4-Java Event Delegation Model • Java cung cấp các công cụ để quản lý sự kiện: (1)Tập các lớp mô tả các đối tượng Event (2)Tập các Interface tương ứng cho 1 lớp event, (3)Tập các lớp Adapter tương ứng- Các lớp đã khai báo sẵn các hành vi trong Interface tương ứng để tiết kiệm công sức cho người lập trình vì: Có những lúc chỉ cần 1 event handler mà người lập trính phải viết code (dù là code trống) cho các event handler khác đã được khai báo trong interface . Mô hình sự kiện Slide 10 / 44 Java Delegation Model EventObject_1 Listener 1 Object Listener 2 EventObject_2 - Tạo động Event Object khi gặp 1 sự kiện. - Implements EventListener phù - Có method hợp. addXXXListener - Mỗi method là một event (ListenerObject) handler phụ thuộc ứng dụng. - Có method - Một Listener có thể được ủy removeXXXListener thác xử lý event cho nhiều (Liste ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Lập trình Java căn bản Lập trình Java căn bản Mô hình sự kiện với AWT Cách quản lý sự kiện Code quản lý biến cố Cấu trúc các sự kiện trong AWTTài liệu liên quan:
-
Bài giảng Lập trình Java căn bản: Chương 7 - ThS. Võ Đức Cẩm Hải
29 trang 202 0 0 -
Bài giảng Lập trình Java căn bản: Chương 5 - ThS. Võ Đức Cẩm Hải
56 trang 56 0 0 -
67 trang 46 0 0
-
Bài giảng Lập trình Java căn bản: Chương 2 - ThS. Võ Đức Cẩm Hải
24 trang 31 0 0 -
100 trang 30 0 0
-
Bài giảng Lập trình Java cơ bản
239 trang 25 0 0 -
Bài giảng Lập trình Java căn bản: Chương 10 - ThS. Võ Đức Cẩm Hải
87 trang 24 0 0 -
Bài giảng Lập trình Java căn bản: Chương 8 - ThS. Võ Đức Cẩm Hải
48 trang 22 0 0 -
Bài giảng Lập trình Java căn bản: Chương 9 - ThS. Võ Đức Cẩm Hải
50 trang 21 0 0 -
Bài giảng Lập trình Java căn bản: Chương 3 - ThS. Võ Đức Cẩm Hải
61 trang 21 0 0