intTypePromotion=1

Bài giảng Lập trình java: Chương 5 - ThS. Hoàng Mạnh Hà

Chia sẻ: Zcsdf Zcsdf | Ngày: | Loại File: PPTX | Số trang:49

0
57
lượt xem
10
download

Bài giảng Lập trình java: Chương 5 - ThS. Hoàng Mạnh Hà

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mục tiêu của chương 5 GUI Programming with JAVA của bài giảng Lập trình java trình bày về AWT Package, Event-handlers, Layout Managers, Swing Package, lập trình giao diện với Swing.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình java: Chương 5 - ThS. Hoàng Mạnh Hà

  1. Lập trình Java GUI Programming with JAVA ThS. Hoàng Mạnh Hà hoangha84@gmail.com https:// sites.google.com/site/hoangha84
  2. Nội dung  AWT Package  Event-handlers  Layout Managers  Swing Package  Lập trình giao diện với Swing 2 SGU - CNTT - Lập Trình JAVA
  3. AWT Package 3 SGU - CNTT - Lập Trình JAVA
  4. GUI Programming  Graphical User Interface – GUI: Giao diện người dùng.  GUI cho phép chương trình tương tác với người sử dụng một cách dễ dàng, thân thiện hơn.  JAVA cung cấp 2 bộ thư viện hỗ trợ lập trình GUI:  AWT (Abstract Window Toolkit): xuất hiện từ JDK 1.0. Hiện nay hầu hết được thay thế bởi Swing.  Swing: một phần của Java Foundation Classes (JFC), là một add-on của JDK 1.1 sau đó được thêm vào từ JDK1.2. Một số thư viện GUI khác: Eclipse's Standard 4Widget Toolkit (SWT), Google Web Toolkit (GWT) SGU - CNTT - Lập Trình JAVA
  5. AWT  Bao gồm 12 gói, trong đó sử dụng phổ biến nhất là 2 gói:  java.awt  java.awt.event  Platform-independent  Device-independent 5 SGU - CNTT - Lập Trình JAVA
  6. Gói java.awt  GUI Component classes (such as Button, TextField, and Label),  GUI Container classes (such as Frame, Panel, Dialog and ScrollPane),  Layout managers (such as FlowLayout, BorderLayout and GridLayout),  Custom graphics classes (such as Graphics, Color and Font). 6 SGU - CNTT - Lập Trình JAVA
  7. Gói java.awt.event  Event classes (such as ActionEvent, MouseEvent, KeyEvent and WindowEvent),  Event Listener Interfaces (such as ActionListener, MouseListener, KeyListener and WindowListener),  Event Listener Adapter classes (such as MouseAdapter, KeyAdapter, and WindowAdapter). 7 SGU - CNTT - Lập Trình JAVA
  8. Containers và Components  Component: các đối tượng giao diện cơ bản (Button, label, textfield…)  Container: các đối tượng dùng để chứa các component (Frame, Panel, Applet) 8 SGU - CNTT - Lập Trình JAVA
  9. Frame  Frame: container mức cao nhất trong AWT.  Thanh tiêu đề  Thanh menu (tùy chọn)  Phần hiện thị  Thanh tiêu đề của frame:  Icon  Tiêu đề  Bộ nút điều khiển cửa sổ 9 SGU - CNTT - Lập Trình JAVA
  10. Panel  Là một vùng hình chữ nhật dùng để nhóm các thành phần giao diện khác theo một layout nhất định.  Mọi component phải được đưa vào container.  Tất cả container đều có phương thức:  add(Component c) 10 SGU - CNTT - Lập Trình JAVA
  11. AWT Container Classes  Top-level: Frame, Dialog, Applet  Frame: cung cấp giao diện cửa sổ chính.  Dialog: cửa sổ pop-up để tương tác với người dùng.  Applet: top-level container cho applet (chương trình java nhúng trong trình duyệt) 11 SGU - CNTT - Lập Trình JAVA
  12. AWT Container Classes  Container cấp 2: Panel và ScrollPane 12 SGU - CNTT - Lập Trình JAVA
  13. AWT Component 13 SGU - CNTT - Lập Trình JAVA
  14. Một số phương thức thường dùng  setSize(int width, int height)  setVisible(true)  setTitle(String title); 14 SGU - CNTT - Lập Trình JAVA
  15. Event-Handlers 15 SGU - CNTT - Lập Trình JAVA
  16. AWT Event-Handling  Source, listener, event object  Source object:  Button, TextField,…  Tương tác với người dùng  Khi có sự tương tác từ người dùng, phát sinh event object đến tất cả các listener.  Listener object:  Để bắt các event, phải đăng kí đối tượng listener cho đối tượng source tương ứng.  Mỗi loại event sẽ được xử lý bởi phương thức event- handler của các listener tương ứng. 16 SGU - CNTT - Lập Trình JAVA
  17. AWT Event-Handling 17 SGU - CNTT - Lập Trình JAVA
  18. AWT Event-Handling  Tất cả các XXXListener là những interface được xây dựng sẵn trong đó có các phương thức xử lý sự kiện tương ứng với từng loại sự kiện (event-handler). public interface MouseListener extends EventListener { public void mouseClicked(MouseEvent e); public void mousePressed(MouseEvent e); public void mouseReleased(MouseEvent e); public void mouseEntered(MouseEvent e); public void mouseExited(MouseEvent e); } 18 SGU - CNTT - Lập Trình JAVA
  19. AWT Event-Handling  Khi muốn thực hiện một hành động ứng với một sự kiện nào đó, ta cần xử lý trong phương thức event- handler tương ứng.  Để làm được điều này ta cần override event-handler tương ứng, thông thường bằng cách xây dựng lớp thực thi interface của Listener cần thiết. class MyMouseListener implements MouseListener { @Override public void mouseClicked(MouseEvent e) { } @Override 19 SGU - CNTT - Lập Trình JAVA public void mousePressed(MouseEvent e) {
  20. AWT Event-Handling  Sau đó thông qua phương thức:  srcObj.addXXXListener(XXXListener l)  srcObj.removeXXXListener(XXXListener l)  để đăng kí / hủy đăng kí Listener tương ứng cho đối tượng source phát sinh sự kiện.  Khi đó khi người dùng tương tác với đối tượng source sẽ sinh ra event object tương ứng.  Các event object này được tất cả các listener ghi nhận và gọi các phương thức xử lý event-handler tương ứng. 20 SGU - CNTT - Lập Trình JAVA

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản