Bài giảng Lập trình mạng - Chương 5: Applets
lượt xem 3
download
Bài giảng "Lập trình mạng - Chương 5: Applets" trình bày các nội dung: Define an applet, Differentiate between Java Applications and Java Applets, Create an applet, Identify how parameters are passed to applets, Discuss event handling with Applets, Explain Classes such as. Mời các bạn cùng tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Lập trình mạng - Chương 5: Applets
- Chapter 5
- Define an applet Differentiate between Java Applications and Java Applets Create an applet Identify how parameters are passed to applets Discuss event handling with Applets Explain Classes such as ◦ Graphics class ◦ Font class ◦ FontMetrics class ◦ Color class 2
- Applet là một chương trình Java được nhúng vào một trang HTML và thực thi trên một trình duyệt hỗ trợ Java Được tạo ra từ lớp con của lớp java.applet.Applet Một số trình duyệt hỗ trợ Java: Internet Explorer, Netscape Communicator 3
- Lớp Applet là một thành phần của AWT, nằm gói khác java.awt Lớp java.applet.Applet cung cấp mọi chức năng phục vụ việc thực thi các ứng dụng nhúng applet: ◦ Các thành phần GUI và các Container được nhúng vào 1 applet. ◦ Các thao tác thực hiện của applet được viết đè trong hàm paint() 4
- Chu kỳ sống của một đối tượng xác định những giai đoạn mà đối tượng phải trải qua từ khi đối tượng được tạo ra cho đến lúc bị huỷ. Applet định nghĩa cấu trúc của nó từ bốn sự kiện xảy ra trong quá trình thực thi Với mỗi sự kiện, một phương thức tự động được gọi 5
- The methods are as follows: ◦ init(): called during initialization ◦ start(): starts the applet once it is initialized ◦ stop(): used to pause the execution of an applet ◦ destroy(): used to destroy the applet ◦ Phương thức paint() dùng để hiển thị một đường, văn bản hay hình ảnh lên màn hình ◦ Khi applet được vẽ lại sau khi đã được vẽ một lần, phương thức repaint() được dùng ◦ Khi xử lý các đối tượng điều khiển ko cần Paint() 6
- Start Redraw Destroy init( ) Applet Applet state Applet start( ) paint( ) stop( ) destroy( ) Born Initialization Applet state Working Applet Displayed Idle State Applet Destroyed7
- 8
- An applet is compiled using the Java compiler: javac javac filename.java Create a HTML page to display the applet -> File name, ex: abc.html Run Applet: ◦ Command Prompt: appletviewer abc.html. ◦ Open with IE ◦ Test in IDE Eclipse directly 9
- import java.awt.*; import java.applet.*; public class Simple extends Applet The first my Web { String str; { str = "Java is interesting!"; } public void paint(Graphics g){ import java.awt.*; g.drawString(str, 50, 50); import java.applet.*; } import javax.swing.JLabel; } public class Simple extends Applet { import java.awt.Graphics; String str; public class Simple extends JLabel g; Applet { public void init(){ String str; str = "Java is interesting!"; public void paint(Graphics g){ g= new JLabel (str); str = "Java is interesting!"; add(g); g.drawString(str, 50, 50); } } } 10 }
- 11
- import java.awt.*; Các lớp: import java.applet.*; Image; public class Simple extends Applet { Image img; Graphics public void init() { Phương thức: getCodeBase() URL img =getImage(getCodeBase(),"cafe.gif"); - } public void paint(Graphics g) { của applet g.drawImage(img,20,20,this); getImage() trả về một - } đối tượng Image có thể } vẽ trên màn hình - drawImage() lấy bốn tham số – đối tượng Image, vị trí gồm toạ độ x và y, đối tượng kiểu ImageObserver 12
- [] [] … [] 13
- Các tham số cho phép người dùng kiểm soát những nhân tố của applet Các tham số được truyền cho applet dùng thẻ trong file HTML Giá trị tham số được rút trích trong applet dùng phương thức: getParameter()trả về một chuỗi
- function Standard Applet Ứng dụng: trên Server/Client. Công cụ phát Được thiết kế để ứng dụng triển software trên web Khai báo: Là lớp con của bất kỳ lớp nào Phải là lớp con của Applet trong các gói GUI Tùy chọn Do trình Web Cách thức Bắt đầu bằng hàm main() Bắt đầu bằng hàm init() thực hiện Dữ liệu vào Thông qua tham số dòng lệnh Các tham số đặt trong tệp HTML Cách nạp Nạp bằng dòng lệnh và thực hiện Thông qua trang web và chạy CT nhờ trình biên dịch Java Yêu cầu bộ Bộ nhớ tối thiểu Bộ nhớ dành cho cả trình nhớ duyệt và applet 16
- GUI được dùng để tạo ra một giao diện có nhiều tranh ảnh để dễ làm việc Layout mặc định của applet là FlowLayout Những đối tượng điều khiển có thể tạo ra ◦ Cách tạo tương tự trong AWT ◦ Khác là không cần tạo thành phần (Frame) để chứa các điều khiển 17
- Click hay nhấn phím Enter trên những thành phần GUI sẽ tạo ra một sự kiện Trong khi thiết kế applet ta cần bẫy các sự kiện này và cung cấp những hành vi thích hợp được thực hiện để đáp ứng mỗi sự kiện Thủ tục theo sau khi một sự kiện được tạo ra ◦ Xác định loại sự kiện ◦ Xác định thành phần tạo ra sự kiện ◦ Viết lệnh xử lý sự kiện
- import java.awt.*; btnAccept = new Button("Accept"); import java.awt.event.*; btnAccept.addActionListener(this); import java.applet.*; this.add(btnAccept); public class Simple extends Applet implements btnThoat = new Button("Thoat"); ActionListener { btnThoat.addActionListener(this); Label lbl1, lbl2, lblKq; this.add(btnThoat); TextField txt1, txt2; } Button btnAccept, btnThoat; /* Phương thức xửlí sựkiện nútđược nhấn */ public void init() public void actionPerformed(ActionEvent ae){ {this.setLayout(new GridLayout(6,2)); String kq=""; lbl1 = new Label("Nguoi thu nhat:"); if(ae.getSource() == btnAccept) // this.add(lbl1); kq = txt1.getText() + " và " + txt2.getText(); txt1 = new TextField(); if(ae.getSource() == btnThoat) // Thoát khỏi chương this.add(txt1); trình lbl2 = new Label("Nguoi thu hai:"); System.exit(0); this.add(lbl2); // Thayđổi nội dung kết quả txt2 = new TextField(); lblKq.setText("Chao mung 2 ban " + kq); this.add(txt2); repaint(); // Vẽlại cácđối tượng} lblKq = new Label(); } this.add(lblKq); } this.add(new Label()); // Các nút nhấn 19
- /* public void mouseMoved(MouseEvent e) */ {} import java.awt.*; import java.applet.*; public void mouseReleased(MouseEvent e) import java.awt.event.*; { public class Mousey extends Applet implements x2 = e.getX(); MouseListener, MouseMotionListener y2 = e.getY(); { repaint(); int x1, y1, x2, y2; } public void init() { public void mouseEntered(MouseEvent e) setLayout(new FlowLayout()); {} setBounds(100,100,300,300); public void mouseDragged(MouseEvent e) addMouseListener(this); {} addMouseMotionListener(this); public void mouseExited(MouseEvent e) this.setVisible(true); {} } public void mouseClicked(MouseEvent e) public void paint(Graphics g) { { } g.drawRect(x1, y1, x2-x1, y2-y1); public void mousePressed(MouseEvent e) x2 = 0; { y2 = 0; x1 = e.getX(); } y1 = e.getY(); } } 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Lập trình mạng
119 p | 1921 | 1059
-
Bài giảng Lập trình mạng: Phần 1
75 p | 157 | 24
-
Bài giảng Lập trình mạng với Java
66 p | 148 | 21
-
Bài giảng Lập trình mạng: Phần 2
112 p | 136 | 16
-
Bài giảng Lập trình mạng: Ôn tập thi hết môn Lập trình mạng - Phạm Trần Vũ
17 p | 121 | 11
-
Bài giảng Lập trình mạng: Chương 1 - ThS. Trần Đắc Tốt
89 p | 117 | 10
-
Bài giảng Lập trình mạng: Chương 1 - Lương Ánh Hoàng
17 p | 122 | 10
-
Bài giảng Lập trình mạng - Lương Ánh Hoàng
81 p | 93 | 10
-
Bài giảng Lập trình mạng: Chương 0 - ĐH Công nghệ Đồng Nai
4 p | 106 | 7
-
Bài giảng Lập trình mạng: Chương 1 - Trương Đình Huy
14 p | 32 | 6
-
Bài giảng Lập trình mạng: Chapter 1 - Nguyễn Thị Thanh Vân
59 p | 70 | 6
-
Bài giảng Lập trình mạng - Chương 5: Lập trình Web - CGI
112 p | 75 | 5
-
Bài giảng Lập trình mạng: Chương 2 - Phạm Trần Vũ
38 p | 80 | 4
-
Bài giảng Lập trình mạng: Mạng máy tính và lập trình mạng - Nguyễn Hữu Thể
25 p | 82 | 4
-
Bài giảng Lập trình mạng - Chương 1: Giới thiệu Lập trình mạng
18 p | 63 | 4
-
Bài giảng Lập trình mạng: Tổng quan về lập trình mạng - Bùi Minh Quân
18 p | 70 | 4
-
Bài giảng Lập trình mạng: Chương 3 - Phạm Trần Vũ
24 p | 87 | 3
-
Bài giảng Lập trình mạng: Giới thiệu môn học - TS. Nguyễn Hoài Sơn
13 p | 95 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn