Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 36 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
36
Dung lượng
548 KB
Nội dung
Abstract Window Toolkit Bài 4 Bài 05 / 2 of 36 Nội dung chính Giải thích về AWT Giái thích về các Containers và Components Frame Panel Label TextFields and TextAreas Checkboxes and RadioButtons Choice Xác định các sự kiện của các component trên Tạo một ứng dụng AWT độc lập Bài 05 / 3 of 36 Abstract Window Toolkit Graphical User Interface (GUI) cung cấp các giao diện đồ họa thân thiện với người dùng. Abstract Window Toolkit (AWT) là một tập các lớp trong java cho phép ta tạo GUI và cho phép người dùng nhập liệu qua bàn phím, chuột. AWT cung cấp các đối tượng cho phép tạo ứng dụng GUI thân thiện, đẹp mắt và hiệu quả. Bài 05 / 4 of 36 Containers Là một vùng có thể chứa các thành phần khác Đó là lớp Container trong gói java.awt với 2 Class phổ biến nhất là Frame và Panel Frame là một cửa sổ tách biệt và có border. Panel là một vùng chứa không có border và nó được chứa trong một cửa sổ. Bài 05 / 5 of 36 Containers - Frame Nó là lớp con của lớp Window và nó có title bar, menu bar, borders và resizing corners. Nó thực sự là một component hay một container. Có thể sử dụng một trong các constructor sau để tạo Frame Frame() Tạo một Frame ko có title, Frame này là invisible Frame(String Title) Tạo một Frame invisible với title bar. Để visible một Frame ta gọi method sau: setVisible() Bài 05 / 6 of 36 Example import java.awt.*; class FrameDemo extends Frame { public FrameDemo(String title) { super(title); } public static void main (String args[]) { FrameDemo ObjFr = new FrameDemo("I have been Framed!!!"); ObjFr.setSize(500,500); ObjFr.setVisible(true); } } Output Bài 05 / 7 of 36 Containers - Panel Được sử dụng để nhóm một số các component với nhau Tạo một Panel bằng cách gọi constructor sau: Panel(); Vì Panel không nhìn thấy nên nó phải được add vào một Frame. Frame sẽ được visible khi 2 method sau được thiết lập – setSize() và setVisible() Bài 05 / 8 of 36 Example import java.awt.*; class PanelTest extends Panel { public static void main(String args[]) { PanelTest ObjPanel = new PanelTest(); Frame ObjFr = new Frame("Testing a Panel!"); ObjFr.add(ObjPanel); ObjFr.setSize(400,400); ObjFr.setVisible(true); } public PanelTest() { // write code to override default behavior } } Output Bài 05 / 9 of 36 Component Là tất cả những gì được định vị trên UI và có thể visible và resize. Textfields, Labels, Checkboxes, Textareas là các ví dụ của component Một vài các component nâng cao như : scrollbars, scrollpanes và dialogs. Bài 05 / 10 of 36 Sự kế thừa của các lớp trong java Component Button Checkbox Container Choice Canvas TextComponent Label Panel Window Applet Frame Dialog TextArea TextField [...]... focus đang ở đâu, khởi tạo sự thay đổi focus và thay đổi thứ tự focus trên các component Bài 05 / 34 of 36 6 sự kiện được định nghĩa bởi AWT WindowEvent .WINDOW_ ACTIVATED WindowEvent .WINDOW_ GAINED_FOCUS FocusEvent.FOCUS_GAINED FocusEvent.FOCUS_LOST WindowEvent .WINDOW_ LOST_FOCUS WindowEvent .WINDOW_ DEACTIVATED Bài 05 / 35 of 36 Phát sinh sự kiện Nếu người dùng click lên một child component là... MenuItem TextField Bài 05 / 29 of 36 ItemListener Các component phát sinh ItemListener: ItemListener Choice Checkbox List Bài 05 / 30 of 36 WindowListener Các component phát sinh WindowListener: WindowListener Dialog Frame Bài 05 / 31 of 36 Các listener cho Component Component ComponentListener FocusListener KeyListener MouseListener MouseMotionLIstener Bài 05 / 32 of 36 MouseEvent và WindowEvent ... ObjComment.setSize(200,200); ObjComment.show(); } } Bài 05 / 16 of 36 Buttons Là một phần tử của GUI Là cách dễ nhất để người dùng có thể tương tác với ứng dụng Các constructor: Button() Tạo button mới Button(String text) Tạo button với text Bài 05 / 17 of 36 Example addWindowListener(new WindowAdapter() { import public void windowClosing(WindowEvent we) java.awt.*; import { java.awt.event.*;... ObjAccName.show(); } } Output Bài 05 / 14 of 36 TextArea Sử dụng khi input nhiều hơn một dòng Bao gồm một ScrollBar Các constructor: TextArea() TextArea(int rows, int cols) TextArea(String text) TextArea(String text, int rows, int cols) TextArea (String text, int rows, int cols, int scrollbars) tạo TextArea với scrollbars Bài 05 / 15 of 36 Example addWindowListener(new WindowAdapter() import... addItem() moviestars.addItem(“Antonio Banderas”); moviestars.addItem(“Leonardo Dicaprio”); Bài 05 / 23 of 36 Example import java.awt.*; addWindowListener(new WindowAdapter() import java.awt.event.*; Output { Stars extends Frame class public void windowClosing(WindowEvent we) { { Choice moviestars = new Choice(); setVisible(false); Label lblQts = new Label("Who is your favorite movie star?"); System.exit(0);... moviestars.addItem("Leonardo DiCaprio"); Stars ObjStar = new Stars ("A sky full of stars!"); moviestars.addItem("Sandra Bullock"); ObjStar.setSize (40 0 ,40 0); moviestars.addItem("Hugh Grant"); ObjStar.show(); moviestars.addItem("Julia Roberts"); } add(lblQts); } add(moviestars); Bài 05 / 24 of 36 Điều khiển sự kiện với component Các sự kiện sẽ được phát sinh khi người dùng clicks chuột, presses/releases a key... được chọn WindowEvent MouseEvent KeyEvent TextEvent: Phát sinh khi giá trị trong thành phần textfield hay textarea bị thay đổi ItemEvent: Phát sinh khi một mục menu được chọn hay bỏ chọn FocusEvent Bài 05 / 27 of 36 Các interface tương ứng ActionListener WindowListener MouseListener MouseMotionListener KeyListener TextListener ItemListener FocusListener Bài 05 / 28 of 36... ObjTest.show(); } add(btnJam); } Bài 05 / 18 of 36 Checkbox Đưa ra nhiều lựa chọn cho người dùng, người dùng có thể chọn hay bỏ chọn bằng cách tích lên đó Các constructor: Checkbox() tạo một empty checkbox Checkbox(String text) Tạo một checkbox với nhãn Checkbox(String text, boolean on) tạo checkbox với nhãn và lựa chọn Bài 05 / 19 of 36 Example addWindowListener(new WindowAdapter() import java.awt.*;... Checkbox male = new Checkbox(“male”,cg,true); Checkbox female= new Checkbox(“female”,cg,false); Bài 05 / 21 of 36 Example import java.awt.*; addWindowListener(new WindowAdapter() import java.awt.event.*; { class Qualification extends Frame { public void windowClosing(WindowEvent we) { CheckboxGroup cg = new CheckboxGroup(); setVisible(false); Checkbox radUnder = new Checkbox("Undergraduate",cg,false); System.exit(0);... Frame là một lớp con của Component, nó kế thừa tất cả các đặc điểm của Component WindowEvent: phát sinh khi một cửa sổ được kích hoạt, được đóng, được mở hay thoát MouseEvent: Phát sinh khi chuột di chuyển, được click, được kéo hay thả ra Bài 05 / 33 of 36 KeyboardFocusManager APIs cho FocusEvent và WindowEvent là không đủ bởi vì ta không kiểm soát được component nào đang được focus hay . ứng dụng AWT độc lập Bài 05 / 3 of 36 Abstract Window Toolkit Graphical User Interface (GUI) cung cấp các giao diện đồ họa thân thiện với người dùng. Abstract Window Toolkit (AWT) là một. Abstract Window Toolkit Bài 4 Bài 05 / 2 of 36 Nội dung chính Giải thích về AWT Giái thích về các Containers. cols, int scrollbars) tạo TextArea với scrollbars Bài 05 / 16 of 36 Example addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent we) { setVisible(false); System.exit(0); } }); } public