Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
449,5 KB
Nội dung
Java Object-Oriented Programming Giảng viên : Email Website : : Nguyễn Đức Hiển ndhien@udn.vn Thời lượng Lý thuyết : Thực hành + thảo luận : Nguyễn Đức Hiển – Bài giảng Lập trình Java tín (30 tiết) tín Chương Lập trình giao diện (Graphic User Interface) Nguyễn Đức Hiển – Bài giảng Lập trình Java Nội dung Giới thiệu AWT Swing Xây dựng Java GUI Cơ chế kiểm soát kiện người dùng Nguyễn Đức Hiển – Bài giảng Lập trình Java Giới thiệu Java GUI AWT (Abstract Window Toolkit) (java.awt.*) Bộ khung (framework) GUI củ cho Java (Java 1.1) Một số dựa vào mã ngữ (native code) Các vấn đề độc lập hệ Swing (javax.swing.*) Bộ khung GUI giới thiệu Java 1.2 Bao gồm tất đặc tính AWT cộng với nhiều đặc tính tiên tiến khác Thuần Java, thành phần nhẹ (lightweight) (không dựa vào mã ngữ) Kiến trúc cảm quan (look and feel) Nguyễn Đức Hiển – Bài giảng Lập trình Java Giới thiệu Java GUI AWT Swing cung cấp tập hợp lớp Java cho phép tạo giao diện đồ họa (GUI) Cung cấp thành phần để tạo hoạt động hiệu ứng GUI như: Container (bộ chứa) Component (thành phần GUI) Layout manager (bộ quản lý cục) Graphic drawing capabilitie (vẻ đồ họa) Font (phông chử) Event (sự kiện) Nguyễn Đức Hiển – Bài giảng Lập trình Java GUI Class Hierarchy (AWT) AWTEvent Font FontMetrics Object Color Graphics Component Container Panel Applet Button Window Frame Label TextField Dialog TextComponent List TextArea Choice CheckBox LayoutManager CheckBoxGroup Canvas MenuComponent Scrollbar Nguyễn Đức Hiển – Bài giảng Lập trình Java MenuItem MenuBar Menu FileDialog GUI Class Hierarchy (Swing) Nguyễn Đức Hiển – Bài giảng Lập trình Java Ví dụ: Tạo cửa sổ với Swing Ứngng dụng HelloWorld Tạo Cửa sổ với “Hello World” tiêu đề Nguyễn Đức Hiển – Bài giảng Lập trình Java Cơ thiết kế GUI Khái niệm xây dựng GUI đơn giản Những thành phần (component) bố trí chứa (container) theo cách thức có tổ chức Những component đối tượng (như Button, Menu, Label, Textbox, Slider, Checkbox, Radio button,…) chứa lồng nhau, … Những thành phần tổ chức chứa sử dụng quản lý bố cục (Layout Manager) Nguyễn Đức Hiển – Bài giảng Lập trình Java JFrame Bộ khung giao diện Được hiển thị cửa sổ có đường viền Nhiều phương thức thành viên bao gồm phương thức thừa kế cho phép thao tác thay đỗi kích thước, thiết đặt thuộc tính, thêm thành phần (conponents),… Các chứa (container) khác: JDialog: hộp thoại JApplet: Web Applet JWindow: Khơng có tiêu đề hay nút điều khiển Nguyễn Đức Hiển – Bài giảng Lập trình Java Cấu trúc JFrame Khung chứa đa tầng Hầu hết thứ đặt vào khung nội dung (content panel) getContentPane() Sử dụng glassPane cho Popup menus, số họat cảnh,… Các phương thức getRootPane() getLayeredPane() getContentPane() getGlassPane() Nguyễn Đức Hiển – Bài giảng Lập trình Java LayeredPane chứa contentPane Quản lý bố cục (Layout manager) Nhiều quản lý cục tồn Java để giúp cho việc tổ chức thành phần Container FlowLayout: Bố trí thành phần chúng thêm vào GridLayout: Bố trí thành phần lưới với kích thước cụ thể BorderLayout: Xác định phần Container North, South, East, West, Center thành phần thêm vào phần CardLayout: Thêm thành phần vào tầng thành phần khác GridBagLayout: Bộ quản lý tùy biến cao sử dụng hàng cột việc thay đổi chiều dài Nguyễn Đức Hiển – Bài giảng Lập trình Java Bộ xử lý kiện (Event Handler) GUI hệ thống hướng kiện (event-driven) Chuột nhấn chuyển động, nút nhấn văn nhập thơng qua bàn phím, nhấn vào mục menu,… Thao tác mong muốn sinh hành động kiện Gói java.awt.event.* Nguyễn Đức Hiển – Bài giảng Lập trình Java Gói java.awt.event.* ActionEvent Object EventObject AdjustmentEvent ItemEvent AWTEvent TextEvent ComponentEvent ContainerEvent FocusEvent PaintEvent WindowEvent InputEvent KeyEvent Nguyễn Đức Hiển – Bài giảng Lập trình Java MouseEvent Các đối tượng xử lý kiện Nguồn kiện Các lớp thành phần GUI mà người sử dụng tương tác Bạn đăng ký “Listener” đáp ứng với kiện định Bộ lắng nghe (Listener) Nhận đối tượng kiện thông báo thực đáp ứng thích hợp Nhiều kiểu lắng nghe tồn cho kiện cụ thể MouseListener, ActionListener, KeyListener,… Các giao tiếp thực cài đặt hành động Đối tượng kiện (Event) Đóng gói thơng tin kiện xuất Các đối tượng kiện gửi tới lắng nghe kiện xuất thành phần GUI Nguyễn Đức Hiển – Bài giảng Lập trình Java Mơ hình xử lý kiện Lớp thực giao tiếp lắng nghe kiện (bộ xử lý kiện) Ví dụ: class Circle extends JFrame implements ActionListener {…} Đăng ký lắng nghe kiện cho nguồn kiện Ví dụ: btCancel.addActionListener(handler); Cài đặt phương thức xử lý kiện (các phương thức giao tiếp lắng nghe kiện) Ví dụ: với lắng nghe kiện ActionListener cần cài đặt phương thức: public void actionPerformed(ActionEvent ev) { …} Nguyễn Đức Hiển – Bài giảng Lập trình Java Một số lắng nghe kiện ActionListener AdjustmentListener ItemListener TextListener EventListener ComponentListener FocusListener ContainerListener KeyListener MouseListener Nguyễn Đức Hiển – Bài giảng Lập trình Java Ví dụ Một ActionListener thực đối tượng lắng nghe đăng ký với thành phần JButton Khi nút nhấn, kiện tự động phát sinh phương thức tương ứng cài đặt ActionListener gọi (actionPerformed) Nguyễn Đức Hiển – Bài giảng Lập trình Java Vi du Nguyễn Đức Hiển – Bài giảng Lập trình Java Ví dụ Nguyễn Đức Hiển – Bài giảng Lập trình Java Thanks for listenning!!! Nguyễn Đức Hiển – Bài giảng Lập trình Java .. .Chương Lập trình giao diện (Graphic User Interface) Nguyễn Đức Hiển – Bài giảng Lập trình Java Nội dung Giới thiệu AWT Swing Xây dựng Java... Bài giảng Lập trình Java Vi du Nguyễn Đức Hiển – Bài giảng Lập trình Java Ví dụ Nguyễn Đức Hiển – Bài giảng Lập trình Java Thanks for listenning!!! Nguyễn Đức Hiển – Bài giảng Lập trình Java... MenuComponent Scrollbar Nguyễn Đức Hiển – Bài giảng Lập trình Java MenuItem MenuBar Menu FileDialog GUI Class Hierarchy (Swing) Nguyễn Đức Hiển – Bài giảng Lập trình Java Ví dụ: Tạo cửa sổ với Swing Ứngng